我正在使用 Moq 在 ElasticSearch 中模拟 SingleBucket 对象。基本上我需要让它返回 5 个文档(属性 .DocCount
)
var sb = new Mock<SingleBucket>();
sb.SetupGet(x => x.DocCount).Returns(5);
我试过了,我得到了一个异常(exception):
{System.NotSupportedException: Invalid setup on a non-virtual
(overridable in VB) member: x => x.DocCount
这段代码有什么问题?
似乎可以使用
SetupGet
模拟属性我知道我应该模拟接口(interface)或虚拟方法。有没有机会模拟该对象属性?
最佳答案
正如您已经指定的那样,Moq
不能模拟非虚拟方法。您可以包装 SingleBucket
进入界面,使用another mocking framework .
关于c# - 使用 Moq 在 ElasticSearch 中模拟单个 Bucket 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34016290/