我正在围绕我们现有的一些日志进行单元测试
在我的代码示例 log.InfoFormat 中的 MyLoggingMethod(扩展方法)下面,应该使用大量参数调用。我不在乎传入了多少参数 - 或内容 - 我只想验证从第一个参数记录的内容。
我已经编写了 It.IsAnyLoadOfParameters - 但这就是我想要实现的!
var logMock = new Mock<ILog>();
var log = logMock.Object;
log.MyLoggingMethod(new Monkey());
logMock.Verify(moqLog => moqLog.InfoFormat(It.Is<string>(x => x.Contains("Blah blah blah")), It.IsAnyLoadOfParameters));
以及 log.MyLoggingMethod 中的那种东西是
log.InfoFormat("Blah blah blah {0} {1} {2} {3}", 1, "something", "blah", "four");
我知道我可以放很多 It.IsAny - 但如果可能的话,我想避免这种情况。我只是想检查第一个以确保那里有东西。