Class: RuboCop::Cop::Momocop::FactoryBotConsistentFileName
- Inherits:
-
Base
- Object
- Base
- RuboCop::Cop::Momocop::FactoryBotConsistentFileName
- Includes:
- Momocop::Helpers::FactoryBotHelper, RangeHelp
- Defined in:
- lib/rubocop/cop/momocop/factory_bot_consistent_file_name.rb
Overview
Ensures that FactoryBot factory names match their filenames.
Constant Summary collapse
- MSG =
'Factory name should match the file name.'
- RESTRICT_ON_SEND =
%i[factory].freeze
Constants included from Momocop::Helpers::FactoryBotHelper
Momocop::Helpers::FactoryBotHelper::RUBOCOP_HELPER_METHODS
Instance Method Summary collapse
Instance Method Details
#on_send(node) ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/rubocop/cop/momocop/factory_bot_consistent_file_name.rb', line 34 def on_send(node) factory_name = factory_bot_definition(node) return unless factory_name return unless inside_factory_bot_define?(node) expected_file_name = "#{factory_name}.rb" actual_file_name = File.basename(processed_source.file_path) return unless actual_file_name != expected_file_name add_offense(node.source_range, message: MSG) end |