Moq中有类似SetupGetSequence的东西吗

Nur*_*mir 3 c# unit-testing moq

在 中Moq,我知道可以SetupSequence设置函数的顺序使用,也SetupGet可以设置属性的值。

但是我需要按顺序设置属性。

有没有办法设置顺序进入Moq

注意:我没有编写我正在嘲笑的接口或服务,因此我无法更改它。

Ser*_*kiy 6

对返回值进行排序SetupSequence也适用于属性获取器:

mock.SetupSequence(m => m.PropertyName).Returns(1).Returns(2).Returns(3);
Run Code Online (Sandbox Code Playgroud)

注意:您可以使用Setup代替SetupGet,因为 Moq 检查给定 lambda 表达式的主体是否是属性并SetupGet在内部调用[Source Code]。因此,您唯一的好处就是跳过此内部检查。