Module: Caricature::Interception::ClassMethods

Defined in:
lib/caricature/isolator.rb

Overview

the class methods of this intercepting object

Instance Method Summary collapse

Instance Method Details

#did_receive?(method_name, &block) ⇒ Boolean

Verifies whether the specified method has been called You can specify constraints in the block

The most complex configuration you can make currently is one that is constrained by arguments. This is most likely to be extended in the future to allow for more complex verifications.

Example:

an_isolation.class.did_receive?(:a_method) do |method_call|
  method_call.with(3, "a")
end.should.be.successful

is equivalent to:

an_isolation.class.did_receive?(:a_method).with(3, "a").should.be.successful

You will probably be using this method only when you’re interested in whether a method has been called during the course of the test you’re running.

Returns:

  • (Boolean)


58
59
60
# File 'lib/caricature/isolator.rb', line 58

def did_receive?(method_name, &block)
  isolation_context.class_verify method_name, &block
end

#isolation_contextObject

the context of this isolation instance. this context takes care of responding to method calls etc.



17
18
19
# File 'lib/caricature/isolator.rb', line 17

def isolation_context
  @___context___
end

#when_receiving(method_name, &block) ⇒ Object

Replaces the call to the proxy with the one you create with this method. You can specify more specific criteria in the block to configure the expectation.

Example:

an_isolation.class.when_receiving(:a_method) do |method_call|
  method_call.with(3, "a").return(5)
end

is equivalent to:

an_isolation.class.when_receiving(:a_method).with(3, "a").return(5)

You will most likely use this method when you want your stubs to return something else than nil when they get called during the run of the test they are defined in.



36
37
38
# File 'lib/caricature/isolator.rb', line 36

def when_receiving(method_name, &block)
  isolation_context.create_class_override method_name, &block
end