我是moq的新手,并试图为下面的类实现moq测试,但却遇到了错误。
df1[rownames(unique(df1[,c("ID","X1")])),]
测试方法
public class ClassToTest {
internal Func<string> GetConfigString =
() => ConfigurationManager.AppSettings["somekey"].ToString()
}
设置失败并显示一条消息:
表达式不是方法调用
我在var mock = new Mock<ClassToTest>();
mock.Setup(m => m.GetConfigString).Returns(It.IsAny<Func<string>>());
添加了以下行,但测试仍然失败。有人能让我知道我哪里错了吗?
AssemblyInfo.cs
答案 0 :(得分:0)
将GetConfigString
转换为例如属性并添加virtual
关键字,否则无法使用Mock。
internal virtual Func<string> GetConfigString
{
get
{
return () => ConfigurationManager.AppSettings["somekey"];
}
}