我有一个类通过参数获得代表。
这个类调用该委托,我想用 Moq 对它进行单元测试。
我如何验证该方法是否被调用?
示例类:
public delegate void Foo(int number);
public class A
{
int a = 5;
public A(Foo myFoo)
{
myFoo(a);
}
}
我想检查 Foo 是否被调用。
谢谢。
As of 这次提交 https://github.com/Moq/moq4/commit/e614ae5b4a14896503b59e2a70ac799bb66e741bMoq 现在支持对代表的嘲笑,根据您的情况,您可以这样做:
var fooMock = new Mock<Foo>();
var a = new A(fooMock.Object);
然后您可以验证委托是否被调用:
fooMock.Verify(f => f(5), Times.Once);
Or:
fooMock.Verify(f => f(It.IsAny<int>()), Times.Once);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)