[rspec-users] odd mock behavior

David Chelimsky dchelimsky at gmail.com
Wed Feb 7 12:45:44 EST 2007


On 2/7/07, Micah Martin <micah at 8thlight.com> wrote:
> I'm seeing some odd behavior around the should_receive() when given a block
> combined with some cardinality.
>
> For example, with the following...
>
> my_mock.should_receive(:foo).twice do |i|
>  puts i
> end

Blocks aren't currently supported in any form besides:

my_mock.should_receive(args) {
}

Since none of the other methods (#with, #once, #twice, etc) deal with
a block, the block is never being invoked.

Feel free to submit an RFE if you feel this should be supported.

Cheers,
David



>
> ... the spec passes but i never gets puts'ed.
>
> With the following...
>
> my_mock.should_receive(:foo) do |i|
>  puts i
> end
>
> ... i gets puts'ed twice but the spec fails because it was only expecting
> one call to :foo.
>
>
> Micah Martin
> 8th Light, Inc.
> 8thlight.com
>
>
>
>
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users
>


More information about the rspec-users mailing list