最小起订量设置抛出异常
Moq setup throw exception
我正在设置最小起订量:
mockCommand.Setup(foo => foo.Post<Foo, Response>(It.IsAny<Foo>()))
.Returns((Foo m) =>
{
if (m . . . .)
{
return new <Response>()
{
<...>
};
}
else
{
return new <Response>()
{
<...>
};
}
});
但我得到一个例外:
System.ArgumentException : Invalid callback. Setup on method with 2 parameter(s) cannot invoke callback with different number of parameters (1).
泛型方法定义为:
TResponse Post<TRequest, TResponse>(TRequest request, params string[] query)
我唯一能想到的是,由于我有条件地返回响应,所以它以某种方式混淆了起订量,因此它抛出了异常。想法?
异常指出设置和 Returns
回调委托中省略了参数。
包括被模拟成员的所有参数
mockCommand
.Setup(foo => foo.Post<Foo, Response>(It.IsAny<Foo>(), It.IsAny<string[]>()))
.Returns((Foo m, string[] q) => {
//...omitted for brevity
});
我正在设置最小起订量:
mockCommand.Setup(foo => foo.Post<Foo, Response>(It.IsAny<Foo>()))
.Returns((Foo m) =>
{
if (m . . . .)
{
return new <Response>()
{
<...>
};
}
else
{
return new <Response>()
{
<...>
};
}
});
但我得到一个例外:
System.ArgumentException : Invalid callback. Setup on method with 2 parameter(s) cannot invoke callback with different number of parameters (1).
泛型方法定义为:
TResponse Post<TRequest, TResponse>(TRequest request, params string[] query)
我唯一能想到的是,由于我有条件地返回响应,所以它以某种方式混淆了起订量,因此它抛出了异常。想法?
异常指出设置和 Returns
回调委托中省略了参数。
包括被模拟成员的所有参数
mockCommand
.Setup(foo => foo.Post<Foo, Response>(It.IsAny<Foo>(), It.IsAny<string[]>()))
.Returns((Foo m, string[] q) => {
//...omitted for brevity
});