C# Moq错误-应为带有';布尔·伊萨尼(HttpResponseMessage)和#x27;
我想模仿这种方法:C# Moq错误-应为带有';布尔·伊萨尼(HttpResponseMessage)和#x27;,c#,.net,unit-testing,moq,C#,.net,Unit Testing,Moq,我想模仿这种方法: public HttpClient CreateHttpClientForJwt(Func<HttpResponseMessage, bool> isUnauthenticated, int timeoutSeconds) { var client = Mvx.Resolve<IPlatformOperationProvider>().CreateHttpClient(timeoutSeconds); return new HttpCl
public HttpClient CreateHttpClientForJwt(Func<HttpResponseMessage, bool> isUnauthenticated, int timeoutSeconds)
{
var client = Mvx.Resolve<IPlatformOperationProvider>().CreateHttpClient(timeoutSeconds);
return new HttpClient(new AuthenticatedHttpMessageHandler(this, client, AuthenticationUtils.AddJwtToRequest, isUnauthenticated,_loggingService));
}
public HttpClient为JWT创建HttpClientForJWT(Func未经身份验证,int timeoutSeconds)
{
var client=Mvx.Resolve().CreateHttpClient(timeoutSeconds);
返回新的HttpClient(新的AuthenticatedHttpMessageHandler(this,client,AuthenticationUtils.AddJwtToRequest,isUnauthenticated,_loggingService));
}
我的尝试:
authenticatedRequestServiceMock.Setup(sm => sm.CreateHttpClientForJwt(It.IsAny<Expression<Func<HttpResponseMessage, bool>>>, 5)).Returns(stubHttpClient.Object);
authenticatedRequestServiceMock.Setup(sm=>sm.CreateHttpClientForJwt(It.IsAny,5)).Returns(stubHttpClient.Object);
编译之前,我在IsAny
Visual studio上遇到了以下错误:
应使用'bool IsAny(HttpResponseMessage)
我做错了什么?删除中的表达式
authenticatedRequestServiceMock
.Setup(sm => sm.CreateHttpClientForJwt(It.IsAny<Expression<Func<HttpResponseMessage, bool>>>, 5))
.Returns(stubHttpClient.Object);
It.IsAny()
是一个方法,但您调用它就像调用属性一样。您还将该方法描述为需要一个Func
,但设置为一个表达式
authenticatedRequestServiceMock
.Setup(sm => sm.CreateHttpClientForJwt(It.IsAny<Func<HttpResponseMessage, bool>>(), 5))
.Returns(stubHttpClient.Object);