我们目前正在从NMock2迁移到RhinoMocks,并且在复制以下代码时遇到了麻烦:
foreach (EventInfo e in typeof(MarketMapPopupIMVPView).GetEvents())
Expect.Once.On(mockView).EventAdd(e.Name, new TypeMatcher(typeof(EventHandler)));
本质上,这是放置在MVC控件的模板中,以确保使用该模板的开发人员实际上是在Presenter中连接了View中列出的事件。问题在于我们不事先知道事件,而是按名称放置期望,这在RhinoMocks中似乎找不到解决方法。
最佳答案
我过去做过类似的事情,但是在大多数情况下,我认为这是不值得的。编写自己的存根将花费更少的时间和精力,并且更具表达力和可理解性。我写了一篇关于它的文章。这可能会有所帮助。
http://blog.coreycoogan.com/2009/11/11/event-mocking-without-rhino-mocks/
关于c# - 在RhinoMocks中动态订阅事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2181874/