class RSpec::Mocks::NamedObjectReference

An implementation of rspec-mocks’ reference interface. Used when a string is passed to {ExampleMethods#object_double}, and when a string, named class or named module is passed to {ExampleMethods#instance_double}, or {ExampleMethods#class_double}. Represents a reference to the object named (via a constant lookup) by the string. @see DirectObjectReference

Public Class Methods

@param const_name [String] constant name

# File rspec-mocks/lib/rspec/mocks/object_reference.rb, line 111
def initialize(const_name)
  @const_name = const_name
end

Public Instance Methods

@return [String] the constant name to replace with a double.

# File rspec-mocks/lib/rspec/mocks/object_reference.rb, line 121
def const_to_replace
  @const_name
end
Also aliased as: description

@return [Boolean] true if the named constant is defined, false otherwise.

# File rspec-mocks/lib/rspec/mocks/object_reference.rb, line 116
def defined?
  !!object
end

@return [Object, nil] the target of the verifying double (the named object), or

nil if it is not defined.
# File rspec-mocks/lib/rspec/mocks/object_reference.rb, line 128
def target
  object
end

Yields if the reference target is loaded, providing a generic mechanism to optionally run a bit of code only when a reference’s target is loaded.

@yield [Object] the target object

# File rspec-mocks/lib/rspec/mocks/object_reference.rb, line 137
def when_loaded
  yield object if object
end