Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tag: v2.12.1
Fetching contributors…

Cannot retrieve contributors at this time

28 lines (19 sloc) 0.687 kb


Argument matchers can be used:

  • In stubs to constrain the scope of the stubbed method

    obj.stub(:foo).with(:bar) do |arg| #do something for :bar end obj.stub(:foo).with(:baz) do |arg| #do something for :baz end

  • In expectations to validate the arguments that should be received in a method call

    create a double

    obj = double()

    expect a message with given args

    obj.should_receive(:message).with('an argument')

If more control is needed, one can use a block

obj.should_receive(:message) do |arg1,  arg2|
  # set expectations about the args in this block
  # and optionally set a return value
Jump to Line
Something went wrong with that request. Please try again.