Использование Rhino Mocks, как я могу гарантировать, что метод не вызывается при настройке ожиданий на макет объекта.
В моем примере, я тестирую метод Commit, и мне нужно убедиться, что метод Rollback не вызывается во время выполнения commit. (это потому, что у меня есть логика в методе фиксации, которая автоматически откатывается, если фиксация завершается с ошибкой)
Вот как выглядит код.
[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();
}
Конечно, я могу сделать это на этапе Assert следующим образом:
mockStore.AssertWasNotCalled(x => x.Rollback());
Но я хотел бы установить это как Ожидание в первую очередь.