是否可以将Mock.Protected
和Mock.When
一起用于单个成员设置,除了将When
条件移到设置回调或在Setup
块中调用常规if
之外?
我想做这样的事情:
mock.When(x => condition).Protected().Setup<int>("member").Returns(0);
[When(x => condition)
不熟悉。
何时定义为
public ISetupConditionResult<T> When(Func<bool> condition)`
Version = 4.13.1.0
为什么不只使用正常条件然后再执行受保护的设置
if(condition) {
mock.Protected().Setup<int>("member").Returns(0);
}
[ISetupConditionResult<T>
不允许使用Proteced<T>
扩展方法
public static IProtectedMock<T> Protected<T>(this Mock<T> mock) where T : class;
因为它需要Mock<T>
作为目标。