Module Spec::Mocks::ExampleMethods

  1. lib/spec/mocks/example_methods.rb

Public instance methods

allow_message_expectations_on_nil ()

Disables warning messages about expectations being set on nil.

By default warning messages are issued when expectations are set on nil. This is to prevent false-positives and to catch potential bugs early on.

[show source]
# File lib/spec/mocks/example_methods.rb, line 64
      def allow_message_expectations_on_nil
        Proxy.allow_message_expectations_on_nil
      end
double (*args)

Shortcut for creating an instance of Spec::Mocks::Mock.

name is used for failure reporting, so you should use the role that the double is playing in the example.

stubs_and_options lets you assign options and stub values at the same time. The only option available is :null_object. Anything else is treated as a stub value.

Examples

thing = double("thing", :a => "A")
thing.a == "A" => true

person = double("thing", :name => "Joe", :email => "joe@domain.com")
person.name => "Joe"
person.email => "joe@domain.com"
[show source]
# File lib/spec/mocks/example_methods.rb, line 23
      def double(*args)
        __declare_double('Double', *args)
      end
mock (*args)

Alias for double

[show source]
# File lib/spec/mocks/example_methods.rb, line 28
      def mock(*args)
        __declare_double('Mock', *args)
      end
stub (*args)

Alias for double

[show source]
# File lib/spec/mocks/example_methods.rb, line 33
      def stub(*args)
        __declare_double('Stub', *args)
      end
stub_everything (name = 'stub')

DEPRECATED - use double(‘name’).as_null_object instead

Shortcut for creating a mock object that will return itself in response to any message it receives that it hasn’t been explicitly instructed to respond to.

[show source]
# File lib/spec/mocks/example_methods.rb, line 48
      def stub_everything(name = 'stub')
        Spec.warn("\nDEPRECATION: stub_everything('\#{name}') is deprecated and will be removed\nfrom a future version of rspec. Please use double('\#{name}').as_null_object\n(or stub('\#{name}').as_null_object or mock('\#{name}').as_null_object instead.\n\n")
        mock(name, :null_object => true)
      end