如何在我的測試的「行爲」部分中調用模擬,而忽略在測試的「排列」部分中對模擬的任何調用。RhinoMocks:清除或重置AssertWasCalled()
[Test]
public void ShouldOpenThrottleWhenDrivingHome()
{
var engineMock = MockRepository.GenerateStub<IEngine>();
var car = new Car(engineMock);
car.DriveToGroceryStore(); // this will call engine.OpenThrottle
car.DriveHome();
engine.AssertWasCalled(e => e.OpenThrottle());
}
我不想嘗試的注入新鮮的模擬或依靠.Repeat(),因爲測試則必須知道該方法被調用的次數的設置。
這個問題已經被問到:http://stackoverflow.com/questions/770013/rhino-mocks-how-to-clear -previous-expectations-on-an-object –
我再次讀過這個問題 - 它可能不是重複的,但我不確定問題究竟是什麼。 ClearStub()應該做什麼?存根初始化在哪裏? –
是的,這不是一個複製。我編輯了這個問題,希望它更清楚。 –