开发者

Rhino mocks record\play model artefacts

开发者 https://www.devze.com 2023-02-10 19:08 出处:网络
a have some artefacts when using Rhino Mocks var mocks = new MockRepository(); INotifyMessageSender messageSenderMock;

a have some artefacts when using Rhino Mocks

var mocks = new MockRepository();

INotifyMessageSender messageSenderMock; 

NotificationAgent notificatio开发者_JAVA技巧nAgent = null;

var machineID = Guid.NewGuid();
messageSenderMock = mocks.DynamicMock<INotifyMessageSender>();                            
notificationAgent = new NotificationAgent(machineID, messageSenderMock);//in constructor                                 

//notification agent subscribes on messageSenderMock event MessageReceived
using (mocks.Record())
{           
    messageSenderMock.SendRegisterNodeMessage(machineID);          
}
notificationAgent.Start(); // this method should call messageSenderMock.SendRegisterNodeMestod
                             // and it calls this mesthod. i checked in debug mode
messageSenderMock.VerifyAllExpectations();


You are mixing Rhino mock syntaxes. I would use the new AAA syntax. It's much easier.

INotifyMessageSender messageSenderMock = MockRepository.GenerateMock<INotifyMessageSender>();

NotificationAgent notificationAgent = new NotificationAgent(Guid.NewGuid(), messageSenderMock);

notificationAgent.Start();

messageSenderMock.AssertWasCalled(x => x.SendRegisterNodeMessage(machineID)); 
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号