class Nucop::ExplicitFactoryBotUsage
This cop looks for usages of `FactoryGirl.create`, etc. See FactoryBotHelper::FACTORY_BOT_METHODS constant for a complete list.
The factory methods listed are included everywhere, so referencing the constant should rarely be necessary.
@example
# bad job = FactoryGirl.create(:job, project: project) FactoryGirl.build(:project, code: "Super Project") # good job = create(:job, project: project) build(:project, code: "Super Project")
Constants
- MSG
Public Instance Methods
autocorrect(node)
click to toggle source
# File lib/nucop/cops/explicit_factory_bot_usage.rb, line 37 def autocorrect(node) ->(corrector) do corrector.replace(node.source_range, node.source.sub(/(?:FactoryGirl|FactoryBot)[.]/, "")) end end
on_send(node)
click to toggle source
# File lib/nucop/cops/explicit_factory_bot_usage.rb, line 27 def on_send(node) explicit_factory_bot_usage(node) do add_offense(node, location: :expression, message: format(MSG, constant: node.receiver.const_name, method: node.method_name)) end end
relevant_file?(file)
click to toggle source
Calls superclass method
# File lib/nucop/cops/explicit_factory_bot_usage.rb, line 33 def relevant_file?(file) acceptance_or_spec_file?(file) && super end