Hi, I have two stubs in two different specs (one model, one controller). For some reason they are causing some strange conflict with one another. If I comment out the controller stub, the model spec passes. Controller Spec ----------------------------------- require ''spec_helper'' describe MyClass::SomeController do it ''should do stuff'' do Some::Base.stub!(:mystub) #IF I COMMENT THIS OUT IT PASSES end end I have this line in another model spec ------------------------------------------------------ Some::Thing.should_receive(:mystub).exactly(4).times.and_return nil ''Thing'' is a child class of ''Base''. Here is the error: ---------------------------- Failure/Error: Some::Thing.should_receive(:mystub).exactly(4).times.and_return nil (<Some::Thing (class)>).mystub(any args) expected: 4 times received: 2 times * rspec (2.9.0) * rspec-core (2.9.0) * rspec-expectations (2.9.0) * rspec-mocks (2.9.0) * rspec-rails (2.9.0) rails (3.0.4) ruby 1.8.7 Thanks in advance! James
Hi, I have two stubs in two different specs (one model, one controller). For some reason they are causing some strange conflict with one another. If I comment out the controller stub, the model spec passes. Controller Spec ----------------------------------- require ''spec_helper'' describe MyClass::SomeController do it ''should do stuff'' do Some::Base.stub!(:mystub) #IF I COMMENT THIS OUT IT PASSES end end I have this line in another model spec ------------------------------------------------------ Some::Thing.should_receive(:mystub).exactly(4).times.and_return nil ''Thing'' is a child class of ''Base''. Here is the error: ---------------------------- Failure/Error: Some::Thing.should_receive(:mystub).exactly(4).times.and_return nil (<Some::Thing (class)>).mystub(any args) expected: 4 times received: 2 times * rspec (2.9.0) * rspec-core (2.9.0) * rspec-expectations (2.9.0) * rspec-mocks (2.9.0) * rspec-rails (2.9.0) rails (3.0.4) ruby 1.8.7 Thanks in advance! James
On Apr 5, 2012, at 6:03 PM, James wrote:> Hi, > I have two stubs in two different specs (one model, one controller). > For some reason they are causing some strange conflict with one > another.It''s not strange at all. Your child classes will inherit the stubs of the parent class.> If I comment out the controller stub, the model spec passes. > > Controller Spec > ----------------------------------- > require ''spec_helper'' > describe MyClass::SomeController do > it ''should do stuff'' do > Some::Base.stub!(:mystub) #IF I COMMENT THIS OUT IT PASSES > end > end > > > I have this line in another model spec > ------------------------------------------------------ > Some::Thing.should_receive(:mystub).exactly(4).times.and_return > nil > > > ''Thing'' is a child class of ''Base''. > > Here is the error: > ---------------------------- > Failure/Error: > Some::Thing.should_receive(:mystub).exactly(4).times.and_return nil > (<Some::Thing (class)>).mystub(any args) > expected: 4 times > received: 2 times > > > > * rspec (2.9.0) > * rspec-core (2.9.0) > * rspec-expectations (2.9.0) > * rspec-mocks (2.9.0) > * rspec-rails (2.9.0) > rails (3.0.4) > ruby 1.8.7 > > Thanks in advance! > > James > > > > > > _______________________________________________ > rspec-users mailing list > rspec-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users
On Apr 5, 2012, at 6:03 PM, James wrote:> Hi, > I have two stubs in two different specs (one model, one controller). > For some reason they are causing some strange conflict with one > another. > If I comment out the controller stub, the model spec passes. > > Controller Spec > ----------------------------------- > require ''spec_helper'' > describe MyClass::SomeController do > it ''should do stuff'' do > Some::Base.stub!(:mystub) #IF I COMMENT THIS OUT IT PASSES > end > end > > > I have this line in another model spec > ------------------------------------------------------Oh, and if you want to keep things the way they are, try add this line right before mocking Some::Thing: Some::Thing.rspec_reset> Some::Thing.should_receive(:mystub).exactly(4).times.and_return > nil > > > ''Thing'' is a child class of ''Base''. > > Here is the error: > ---------------------------- > Failure/Error: > Some::Thing.should_receive(:mystub).exactly(4).times.and_return nil > (<Some::Thing (class)>).mystub(any args) > expected: 4 times > received: 2 times > > > > * rspec (2.9.0) > * rspec-core (2.9.0) > * rspec-expectations (2.9.0) > * rspec-mocks (2.9.0) > * rspec-rails (2.9.0) > rails (3.0.4) > ruby 1.8.7 > > Thanks in advance! > > James > > > > > > _______________________________________________ > rspec-users mailing list > rspec-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users