Using Rhino Mocks, how do I ensure that a method is not called while setting up the Expectations on the mock object.
In my example, I am testing the Commit method and I need to ensure that the Rollback method is not called while doing the commit. (this is because i have logic in the commit method that will automatically rollback if commit fails)
Here's how the code looks like..
[Test] public void TestCommit_DoesNotRollback() { //Arrange var mockStore = MockRepository.GenerateMock<IStore>(); mockStore.Expect(x => x.Commit()); //here i want to set an expectation that x.Rollback() should not be called. //Act subject.Commit(); //Assert mockStore.VerifyAllExpectation(); }
Of course, I can do this at Assert phase like this:
mockStore.AssertWasNotCalled(x => x.Rollback());
But i would like to set this as an Expectation in the first place.
Another option would be:
mockStore.Expect(x => x.Rollback()).Repeat.Never();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With