Я действительно не использовал носорогов, но как @Lee предложил в своем комментарии вы сможете добиться эффекта, который вы используете после использования StrictMock
без каких-либо других ожиданий. Таким образом, учитывая следующее испытание:
public void TestStrickMock() {
var mockRepo = new MockRepository();
// Create a StrictMock for the IDummy interface
var mock = mockRepo.StrictMock<IDummy>();
// Switch the mode of the mock repo from record to replay
mockRepo.ReplayAll();
// Invoke one of the methods on our mocked instance
mock.Method1();
}
Этот тест потерпит неудачу, потому что Method1
называется, когда не ожидание вызова не было до установленный. Он не работает с ошибкой:
TestStrickMock: Rhino.Mocks.Exceptions.ExpectationViolationException : IDummy.Method1(); Expected #0, Actual #1.
Вы должны иметь возможность создать строгий макет без каких-либо ожиданий - при вызове чего-либо на нем будет вызвано нарушение ожидания. – Lee
@ Lee - спасибо, вот что я на самом деле пробовал сразу после вопроса, и это сработало как прелесть для меня. В любом случае, если вы хотите отредактировать свой ответ, чтобы он отображался как ответ, а не комментарий, я бы принял его тогда – SOReader