我正在尝试编写一个Rhino Mocks测试来验证我是否注册了一个事件。下面是我的测试:如何在Rhino Mocks中测试事件注册
var dataSvc = MockRepository.GenerateStub<IDataService>();
Search srch = new Search(dataSvc, vr);
dataSvc.GetCarriersCompleted += srch.OnCarrierDataReturned;
dataSvc.AssertWasCalled(x => x.GetCarriersCompleted += Arg<GetCarriersCompletedEventArgs>.Is.Anything);
我的代码仅仅是事件的简单的寄存器:
public void GetCarrierList()
{
try
{
_dataService.GetCarriersCompleted += OnCarrierDataReturned; ; //hangedEventHandler(OnDataReturned);
_dataService.GetCarriersAsync(_param);
}
catch (Exception ex)
{
}
}
public void OnCarrierDataReturned(object sender, GetCarriersCompletedEventArgs e)
{
// get results
}
我的数据服务是这样的:
void GetCarriersAsync(System.Collections.Generic.Dictionary<string, string> param);
event System.EventHandler<GetCarriersCompletedEventArgs> GetCarriersCompleted;
我想不通犀牛嘲笑这个测试需要什么。错误是:
错误7无法隐式转换类型 'MACS2SLApp.MACSWcfServiceProxy.GetCarriersCompletedEventArgs' 到 'System.EventHandler' C:\ Documents和Settings \ 600124238 \我的文档\ MACS3 \原型\ WEB UI \ MACSUnitTests \ MACSUnitTests。 cs 126 68 MACSUnitTests
任何想法,将不胜感激。
感谢, Bill44077
我在这里正确的轨道或基地?谢谢! – 2010-12-08 14:31:20