[英]Verify method has been called with IEnumerable containing 'x' elements with Moq
[英]moq - how to verify method has not been called if the class swallows exceptions
我正在尝试使用Moq测试相当复杂的类,并且遇到了问题。
我试图验证没有调用方法,通常这很容易通过设置MockBehavior.Strict来完成,但是在这里,该类具有自己的错误报告机制,因此可以吞下Moq抛出的异常。
测试结束时的.VerifyAll方法也可以通过,这确实很奇怪。 这是Moq中的错误,是否有任何解决方法?
我还尝试过在此方法上设置回调并在其中执行Assert.Fail,但是由于吞噬了它,因此测试框架(VS 2008内置测试)也没有得到通知...
我正在使用Moq 2.6.1014.1。 (还没有时间升级到最低订购量3)
好吧,这很尴尬,我已经设法解决了。
在3.0中,您可以执行以下操作:
mFMXmlC.Verify(f=>f.Put_Queue_Response(It.IsAny<Uri>(),
It.IsAny<string>(),
It.IsAny<string>(),
It.IsAny<object>()), Times.Never());
仍然不明白为什么VerifyAll
不起作用,但是无论如何这似乎符合要求。 如果有人在寻找类似的东西,我将不提问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.