Come posso verificare che una mock venga chiamata nella parte "act" del mio test ignorando le chiamate alla simulazione nella parte "arrangement" del test.RhinoMocks: cancella o ripristina 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());
}
Preferirei non provare un iniettare un mock fresco o fare affidamento su .Repeat() perché il test deve poi sapere quante volte il metodo viene chiamato nel setup.
Questo era già stato chiesto: http://stackoverflow.com/questions/770013/rhino-mocks-how-to-clear -previous-expectations-on-an-object –
Ho letto di nuovo la domanda - probabilmente non è un duplicato, ma non sono sicuro di quale sia esattamente la domanda. Che cosa deve fare ClearStub()? Dove sono stati inizializzati gli stub? –
Sì, non è un duplciate. Ho modificato la domanda, si spera che sia più chiara. –