[英]How do I use IEnumerable with moq It.Is
当检查用于调用方法的正确数据时,我可以这样做:
mockedClass.Verify(method => method.WriteToConsole(It.Is<Result>(item => item.Name == "Bob" && item.Age == 44)));
其中Results是一个对象,是Linq查询的输出:
public class Result
{
public string Name { get; set; }
public int Age { get; set; }
}
但是,我也将IEnumerable用作第二种方法的输入。
如何修改上方的“验证”以检查IEnumerable of Results是否包含可以测试的结果。
mockedClass.Verify(method => method.WriteListToConsole(It.Is<IEnumerable<ResultRecord>>(item => What GOES HERE?)));
此时的“ item”是IEnumerable<ResultRecord>
。 只需写下您要测试的内容即可。
像这样吗
mockedClass.Verify(method => method.WriteListToConsole(It.Is<IEnumerable<ResultRecord>>(item => item.Count() == 1 && item.ToList()[0].SomeProperty == "Something")));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.