
public class query : Iquery{ public queryResponse Execute(queryRequest request) { // get the customer... return new queryResponse { Customer = customer }; }}public class queryRequest{ public string Key { get; set; }}public class queryResponse{ public Customer Customer { get; set; }} …在我的测试中,我希望存根查询以在给出密钥时返回客户
var customer = new Customer();var key = "something";var query = new Mock<ICustomerquery>();// I want to do something like this (but this does not work)// i.e. I dont care what the request object that get passed is in but it must have the key value I want to give itquery.Setup(q => q.Execute(It.IsAny<queryRequest>().Key = key)).Returns(new queryResponse {Customer = customer}); MOQ中我想要的是什么?
解决方法 你正在寻找它It.Is< T>方法,您可以为参数指定任何匹配器函数(Func< T,bool>).例如检查密钥:
query.Setup(q => q.Execute(It.Is<queryRequest>(q => q.Key == key))) .Returns(new queryResponse {Customer = customer}); 总结 以上是内存溢出为你收集整理的c# – “任意”对象上的MOQ存根属性值全部内容,希望文章能够帮你解决c# – “任意”对象上的MOQ存根属性值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)