我该如何在返回属性列表的方法上模拟属性。
public class Data
{
public string Property1 {get: set;}
public string Property2 {get: set;}
public string Property3 {get: set;}
}
public Data GetData(bool paramVal){
Data myData = new Data();
myData.Property1 = "Value1",
myData.Property2 = "Value2",
myData.Property3 = "Value3"
return myData
}
如何在此方法上设置我的模拟,以便可以在属性中设置值?
我尝试过的事情:
MyDataBo = new Mock<IDataBo>`(); //(this is injected into my test class as a dependency)
MyDataBo.Setup(x => x.GetData(It.IsAny<bool>()).Property1).Returns("Value");`
它可以编译,但是调试测试时出现错误:
System.NotSupportedException:不支持的快递...
如何模拟Property1
或所有属性?
答案 0 :(得分:1)
在这种情况下,需要Data
类的实际实例。
Data myFakeData = new Data() {
Property1 = "Value1",
Property2 = "Value2",
Property3 = "Value3"
};
var MyDataBo = new Mock<IDataBo>();
MyDataBo
.Setup(_ => _.GetData(It.IsAny<bool>()))
.Returns(myFakeData);
还有模拟设置,用于在模拟成员被调用时返回假数据。