Tôi gọi _mocks.ReplayAll()
, sau đó một hoặc nhiều _mockedObject.AssertWasCalled()
và sau đó _mocks.VerifyAll()
. Nhưng nó nói với tôi rằng "Hành động này không hợp lệ khi đối tượng giả ở trạng thái ghi".Làm thế nào để sử dụng Rhino.Mocks AssertWasCalled() một cách chính xác?
[Test]
public void SetStateExecuting_Should_Set_State_To_Pause_And_Not_Change_GlobalState_When_GlobalState_Is_Paused()
{
var task = new Task { ID = 1, TimeZone = -660, GlobalState = TaskState.Paused };
_taskDataProvider.Expect(p => p.StateUpdate(task.ID, task.TimeZone, TaskState.Paused));
_mockRepository.ReplayAll();
_manager.SetStateExecuting(task);
_taskDataProvider.AssertWasNotCalled(p => p.GlobalStateUpdate(task.ID,
TaskState.Executing));
_mockRepository.VerifyAll();
}
theo đúng thứ tự để gọi để những phương pháp làm việc một cách chính xác là gì?
Chào bạn, Có thể hữu ích để chứng tỏ bạn đang tuyên bố _manager vv Tôi thường không cần phải làm cho nó trở nên phức tạp. Cũng thấy mã bạn đang thử nghiệm có thể hữu ích. Nếu bạn đang tìm kiếm để có được Rhino Mocks giúp tôi phải nói rằng tôi đã giúp đỡ từ các đồng nghiệp mà còn từ cuốn sách "Nghệ thuật kiểm tra đơn vị" http://www.manning.com/osherove/ – ArtificialGold