module RSpec::Mocks::VerifyingDouble
@private
Public Class Methods
Calls superclass method
# File rspec-mocks/lib/rspec/mocks/verifying_double.rb, line 55 def initialize(doubled_module, *args) @doubled_module = doubled_module possible_name = args.first name = if String === possible_name || Symbol === possible_name args.shift end super(name, *args) @__sending_message = nil end
Public Instance Methods
rubocop:disable Naming/MethodName
Calls superclass method
# File rspec-mocks/lib/rspec/mocks/verifying_double.rb, line 40 def __send__(name, *args, &block) @__sending_message = name super ensure @__sending_message = nil end
Calls superclass method
# File rspec-mocks/lib/rspec/mocks/verifying_double.rb, line 20 def method_missing(message, *args, &block) # Null object conditional is an optimization. If not a null object, # validity of method expectations will have been checked at definition # time. if null_object? if @__sending_message == message __mock_proxy.ensure_implemented(message) else __mock_proxy.ensure_publicly_implemented(message, self) end __mock_proxy.validate_arguments!(message, args) end super end
Calls superclass method
# File rspec-mocks/lib/rspec/mocks/verifying_double.rb, line 7 def respond_to?(message, include_private=false) return super unless null_object? method_ref = __mock_proxy.method_reference[message] case method_ref.visibility when :public then true when :private then include_private when :protected then include_private || RUBY_VERSION.to_f < 2.0 else !method_ref.unimplemented? end end
# File rspec-mocks/lib/rspec/mocks/verifying_double.rb, line 50 def send(name, *args, &block) __send__(name, *args, &block) end