Class Spec::Mocks::Mock

  1. lib/spec/mocks/mock.rb
Parent: Object

Methods

public class

  1. new

public instance

  1. ==
  2. inspect
  3. to_s

Included modules

  1. Methods

Public class methods

new (name=nil, stubs_and_options={})

Creates a new mock with a name (that will be used in error messages only) == Options:

  • :null_object - if true, the mock object acts as a forgiving null object allowing any message to be sent to it.
[show source]
# File lib/spec/mocks/mock.rb, line 10
      def initialize(name=nil, stubs_and_options={})
        if name.is_a?(Hash) && stubs_and_options.empty?
          stubs_and_options = name
          @name = nil
        else
          @name = name
        end
        @options = extract_options(stubs_and_options)
        assign_stubs(stubs_and_options)
      end

Public instance methods

== (other)

This allows for comparing the mock to other objects that proxy such as ActiveRecords belongs_to proxy objects. By making the other object run the comparison, we’re sure the call gets delegated to the proxy target.

[show source]
# File lib/spec/mocks/mock.rb, line 25
      def ==(other)
        other == __mock_proxy
      end
inspect ()
[show source]
# File lib/spec/mocks/mock.rb, line 29
      def inspect
        "#<#{self.class}:#{sprintf '0x%x', self.object_id} @name=#{@name.inspect}>"
      end
to_s ()
[show source]
# File lib/spec/mocks/mock.rb, line 33
      def to_s
        inspect.gsub('<','[').gsub('>',']')
      end