Add logging to transport in tests (#2836)
This commit is contained in:
parent
797ccbedf2
commit
cc84be85bd
|
|
@ -11,6 +11,7 @@ using Microsoft.AspNetCore.Http.Connections;
|
|||
using Microsoft.AspNetCore.Http.Connections.Client;
|
||||
using Microsoft.AspNetCore.Http.Connections.Client.Internal;
|
||||
using Microsoft.AspNetCore.SignalR.Tests;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Microsoft.Extensions.Logging.Testing;
|
||||
using Xunit;
|
||||
using Xunit.Abstractions;
|
||||
|
|
@ -332,16 +333,16 @@ namespace Microsoft.AspNetCore.SignalR.Client.Tests
|
|||
writeContext.EventId.Name == "ErrorStartingTransport";
|
||||
}
|
||||
|
||||
using (StartVerifiableLog(out var loggerFactory, expectedErrorsFilter: ExpectedErrors))
|
||||
using (StartVerifiableLog(out var loggerFactory, LogLevel.Trace, expectedErrorsFilter: ExpectedErrors))
|
||||
{
|
||||
var httpHandler = new TestHttpMessageHandler();
|
||||
var httpHandler = new TestHttpMessageHandler(loggerFactory);
|
||||
|
||||
httpHandler.OnGet("/?id=00000000-0000-0000-0000-000000000000", (_, __) =>
|
||||
{
|
||||
return Task.FromResult(ResponseUtils.CreateResponse(HttpStatusCode.InternalServerError));
|
||||
});
|
||||
|
||||
var sse = new ServerSentEventsTransport(new HttpClient(httpHandler));
|
||||
var sse = new ServerSentEventsTransport(new HttpClient(httpHandler), loggerFactory);
|
||||
|
||||
await WithConnectionAsync(
|
||||
CreateConnection(httpHandler, loggerFactory: loggerFactory, transport: sse),
|
||||
|
|
@ -367,7 +368,7 @@ namespace Microsoft.AspNetCore.SignalR.Client.Tests
|
|||
return ResponseUtils.CreateResponse(HttpStatusCode.Accepted);
|
||||
});
|
||||
|
||||
var sse = new ServerSentEventsTransport(new HttpClient(httpHandler));
|
||||
var sse = new ServerSentEventsTransport(new HttpClient(httpHandler), loggerFactory);
|
||||
|
||||
await WithConnectionAsync(
|
||||
CreateConnection(httpHandler, loggerFactory: loggerFactory, transport: sse),
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ using Microsoft.AspNetCore.Connections;
|
|||
using Microsoft.AspNetCore.Http.Connections.Client;
|
||||
using Microsoft.AspNetCore.Http.Connections.Client.Internal;
|
||||
using Microsoft.AspNetCore.SignalR.Tests;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Microsoft.Extensions.Logging.Testing;
|
||||
using Moq;
|
||||
using Moq.Protected;
|
||||
|
|
@ -198,7 +199,7 @@ namespace Microsoft.AspNetCore.SignalR.Client.Tests
|
|||
});
|
||||
|
||||
using (var httpClient = new HttpClient(mockHttpHandler.Object))
|
||||
using (StartVerifiableLog(out var loggerFactory, expectedErrorsFilter: ExpectedErrors))
|
||||
using (StartVerifiableLog(out var loggerFactory, LogLevel.Trace, expectedErrorsFilter: ExpectedErrors))
|
||||
{
|
||||
var sseTransport = new ServerSentEventsTransport(httpClient, loggerFactory);
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@ using System.Net;
|
|||
using System.Net.Http;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Microsoft.Extensions.Logging.Abstractions;
|
||||
|
||||
namespace Microsoft.AspNetCore.SignalR.Client.Tests
|
||||
{
|
||||
|
|
@ -13,6 +15,7 @@ namespace Microsoft.AspNetCore.SignalR.Client.Tests
|
|||
{
|
||||
private List<HttpRequestMessage> _receivedRequests = new List<HttpRequestMessage>();
|
||||
private RequestDelegate _app;
|
||||
private readonly ILogger _logger;
|
||||
|
||||
private List<Func<RequestDelegate, RequestDelegate>> _middleware = new List<Func<RequestDelegate, RequestDelegate>>();
|
||||
|
||||
|
|
@ -29,8 +32,10 @@ namespace Microsoft.AspNetCore.SignalR.Client.Tests
|
|||
}
|
||||
}
|
||||
|
||||
public TestHttpMessageHandler(bool autoNegotiate = true, bool handleFirstPoll = true)
|
||||
public TestHttpMessageHandler(ILoggerFactory loggerFactory, bool autoNegotiate = true, bool handleFirstPoll = true)
|
||||
{
|
||||
_logger = loggerFactory?.CreateLogger<TestHttpMessageHandler>() ?? NullLoggerFactory.Instance.CreateLogger<TestHttpMessageHandler>();
|
||||
|
||||
if (autoNegotiate)
|
||||
{
|
||||
OnNegotiate((_, cancellationToken) => ResponseUtils.CreateResponse(HttpStatusCode.OK, ResponseUtils.CreateNegotiationContent()));
|
||||
|
|
@ -54,6 +59,11 @@ namespace Microsoft.AspNetCore.SignalR.Client.Tests
|
|||
}
|
||||
}
|
||||
|
||||
public TestHttpMessageHandler(bool autoNegotiate = true, bool handleFirstPoll = true)
|
||||
: this(NullLoggerFactory.Instance, autoNegotiate, handleFirstPoll)
|
||||
{
|
||||
}
|
||||
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
Disposed = true;
|
||||
|
|
@ -62,6 +72,7 @@ namespace Microsoft.AspNetCore.SignalR.Client.Tests
|
|||
|
||||
protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
|
||||
{
|
||||
_logger.LogDebug("Calling handlers for a '{Method}' going to '{Url}'.", request.Method, request.RequestUri);
|
||||
await Task.Yield();
|
||||
|
||||
lock (_receivedRequests)
|
||||
|
|
|
|||
Loading…
Reference in New Issue