7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
# File 'lib/rspec_request_helpers/helpers.rb', line 7
def on_send(node)
_, method_name, *args = node.children
factory_attrs = args.map { |e| e.loc.expression.source }.join(', ')
case method_name
when /list!$/
replace(node.loc.expression, "let!(:#{method_name.to_s.sub(/list!$/,'')}) { FactoryBot.create_list(#{factory_attrs}) }")
when /list$/
replace(node.loc.expression, "let(:#{method_name.to_s.sub(/list$/,'')}) { FactoryBot.create_list(#{factory_attrs}) }")
when /!$/
replace(node.loc.expression, "let!(:#{method_name.to_s.sub(/!$/,'')}) { FactoryBot.create(#{factory_attrs}) }")
else
replace(node.loc.expression, "let(:#{method_name}) { FactoryBot.create(#{factory_attrs}) }")
end
end
|