On Aug 22, 2012, at 1:38 PM, Lenny Marks wrote: > > On Aug 22, 2012, at 10:36 AM, David Chelimsky wrote: > >> On Wed, Aug 22, 2012 at 9:16 AM, J. B. Rainsberger <m...@jbrains.ca> wrote: >>> On Wed, Aug 22, 2012 at 10:07 AM, David Chelimsky <dchelim...@gmail.com> >>> wrote: >>>> >>>> On Wed, Aug 22, 2012 at 7:52 AM, J. B. Rainsberger <m...@jbrains.ca> wrote: >>>>> On Tue, Aug 21, 2012 at 11:37 PM, Bas Vodde <b...@odd-e.com> wrote: >>>>>> >>>>>> >>>>>> JB is right. >>>>>> >>>>>> Sometimes, for clarity, it is useful to add should_not, but for >>>>>> functionality it is usually not needed. >>>>> >>>>> >>>>> I know JMock has never() for this people. Should RSpec-mocks have >>>>> something >>>>> like object.should_receive(:nothing). >>>> >>>> never() is not a catch all for _all_ messages. It is for a specific >>>> message, just like it is in rspec-mocks >>>> >>>> # rspec >>>> object.should_receive(:msg).never >>>> >>>> #jmock >>>> never(object).msg() >>> >>> >>> In JMock, you can write this: >>> >>> never(object); >>> >>> and this means "never anything". Just like >>> >>> ignoring(object); >>> allowing(object); >>> >>> which each equate to mock().as_null_object(). >> >> Perhaps it goes without saying, but I was not aware of that ;) >> >> As you noted earlier this thread (not quoted above) RSpec::Mocks::Mock >> instances (returned by double(), mock(), or stub()) are strict by >> default - e.g. they'll complain about any unexpected messages. >> Obviously that does not account for any real objects. >> >> I'm open to adding an API for this, but not >> object.should_receive(:nothing) since that syntax is for declaring >> expected messages. >> > > +1 for me. I've found myself on occasion using > should_not_receive(:some_message). OK, see a failing spec, make it pass, but > what about when the collaborator method is renamed. All those > should_not_receive expectations will still pass no matter what. It would be > great to have object.should_receive(:nothing) instead. This would make life > easier when collaborators are stubbed out with :as_null_object stubs.
I mean some equivalent to object.should_receive(:nothing). Maybe object.should_receive_nothing ?? > > -lenny > >> Other ideas welcome. >> _______________________________________________ >> rspec-users mailing list >> rspec-users@rubyforge.org >> http://rubyforge.org/mailman/listinfo/rspec-users > > _______________________________________________ > rspec-users mailing list > rspec-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users