使用Moq模拟ElasticSearch中的单桶对象
本文关键字:单桶 对象 ElasticSearch Moq 模拟 使用 | 更新日期: 2023-09-27 18:25:07
我正在使用Moq模拟ElasticSearch中的SingleBucket对象。基本上我需要让它返回5个文档(属性.DocCount
)
var sb = new Mock<SingleBucket>();
sb.SetupGet(x => x.DocCount).Returns(5);
我试过了,但我得到了一个例外:
{System.NotSupportedException: Invalid setup on a non-virtual
(overridable in VB) member: x => x.DocCount
这个代码出了什么问题?似乎可以使用SetupGet
模拟属性
我知道我应该模拟接口或虚拟方法。有机会嘲笑对象的属性吗?
正如您已经指定的,Moq
不能模拟非虚拟方法。您可以将SingleBucket
封装到一个接口中,也可以使用另一个mocking框架。