class RuboCop::Cop::RSpec::StringAsInstanceDoubleConstant
Do not use a string as ‘instance_double` constant.
@safety
This cop is unsafe because the correction requires loading the class. Loading before stubbing causes RSpec to only allow instance methods to be stubbed.
@example
# bad instance_double('User', name: 'John') # good instance_double(User, name: 'John')
Constants
- MSG
- RESTRICT_ON_SEND
Public Instance Methods
autocorrect(corrector, node)
click to toggle source
# File lib/rubocop/cop/rspec/string_as_instance_double_constant.rb, line 39 def autocorrect(corrector, node) corrector.replace(node, node.value) end
on_send(node)
click to toggle source
# File lib/rubocop/cop/rspec/string_as_instance_double_constant.rb, line 31 def on_send(node) stringified_instance_double_const?(node) do |args_node| add_offense(args_node) do |corrector| autocorrect(corrector, args_node) end end end