Included modules
Public instance methods
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.
# File lib/spec/mocks/example_methods.rb, line 64 def allow_message_expectations_on_nil Proxy.allow_message_expectations_on_nil end
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"
# File lib/spec/mocks/example_methods.rb, line 23 def double(*args) __declare_double('Double', *args) end
Alias for double
# File lib/spec/mocks/example_methods.rb, line 28 def mock(*args) __declare_double('Mock', *args) end
Alias for double
# File lib/spec/mocks/example_methods.rb, line 33 def stub(*args) __declare_double('Stub', *args) end
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.
# 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