我希望能够测试一个对象是否订阅了一个事件。在Rhino Mocks中,下面的代码验证了这一点,但是我无法在Moq中找到一种方法。验证事件处理程序存在于Moq vs Rhino Mocks
public class Presenter
{
IView view;
public Presenter(IView view)
{
this.view = view;
this.view.Load += new EventHandler(view_Load);
}
void view_Load(object sender, EventArgs e)
{
throw new Exception("Not implemented.");
}
}
[Test]
public void VerifyAttachesToViewEvents()
{
MockRepository mocks = new MockRepository();
IView viewMock = (IView)mocks.CreateMock(typeof(IView));
using (mocks.Record())
{
viewMock.Load += null;
LastCall.IgnoreArguments();
}
new Presenter(viewMock);
mocks.VerifyAll();
}
也请参阅这里:https://github.com/moq/moq4/issues/49 – 2016-07-19 06:04:32