我正在尝试Setup
在 Moq 上使用,就像我已经做过很多次一样来返回一个值,但我似乎无法理解为什么在这种情况下参数匹配会失败。
这就是我正在做的事情:
var myParameter = new SomeParameter();
myMock.Setup(x => x.SomeFunction(myParameter)).Returns(myResult);
其中SomeParameter : IParameter
和函数定义为SomeFunction(IParameter parameter)
。
如果我将第一行更改为:
IParameter myParameter = new SomeParameter();
或者实际上,投它:
myMock.Setup(x => x.SomeFunction((IParameter)myParameter))).Returns(myResult);
它工作正常。
这是正常行为还是错误?我可以将 Moq 配置为不检查我传入的任何参数的编译时类型吗?
使用 Moq 4.5.30,稍旧的版本。