当有params参数时,Mock Setup方法将引发异常

时间:2018-07-13 11:16:42

标签: c# .net mocking

我有一个Web服务界面:

TOut Post<TIn, TOut>(TIn request, string baseAddress, string endpoint, int timeout = -1,params HttpStatusCode[] skipedCodeSuccessAuth );

在这里,我为TIn和TOut定义了两种对象类型:

UpdateTransactionRequest,UpdateTransactionResponse

我想对此进行模拟,以便它返回传入的任何内容-将会返回某些内容,例如:

  private void ServiceInvokerStub()
    {
        _mockServiceInvoker.Setup(x =>
                x.Post<UpdateTransactionRequest, UpdateTransactionResponse>(It.IsAny<UpdateTransactionRequest>(),
                    It.IsAny<string>(), It.IsAny<string>(), It.IsAny<int>(),It.IsAny<HttpStatusCode[]>()))
            .Returns((UpdateTransactionResponse a) => _updateTransactionResponse);
    }

但是我有一个如下例外,关于这个问题有一些好的想法吗?

  

Moq.dll中发生了类型为'System.ArgumentException'的异常   但未在用户代码中处理

     

其他信息:无效的回调。用5设置方法   参数无法调用具有不同数量的回调   参数(1)。

0 个答案:

没有答案