From 259dd04c9900642913e344c3c559820f3f912770 Mon Sep 17 00:00:00 2001 From: James Newton-King Date: Tue, 17 Apr 2018 20:58:18 +1200 Subject: [PATCH] Fix weird NRE --- .../HubConnectionTests.cs | 4 ++-- .../ServerLogScope.cs | 12 ++++++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubConnectionTests.cs b/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubConnectionTests.cs index 24bb82caa7..85cff50b24 100644 --- a/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubConnectionTests.cs +++ b/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubConnectionTests.cs @@ -814,8 +814,8 @@ namespace Microsoft.AspNetCore.SignalR.Client.FunctionalTests try { await hubConnection.StartAsync().OrTimeout(); - var headerValues = await hubConnection.InvokeAsync(nameof(TestHub.GetHeaderValues), new[] { "X-test", "X-42" }).OrTimeout(); - Assert.Equal(new[] { "42", "test" }, headerValues); + var headerValues = await hubConnection.InvokeAsync(nameof(TestHub.GetHeaderValues), new[] {"X-test", "X-42"}).OrTimeout(); + Assert.Equal(new[] {"42", "test"}, headerValues); } catch (Exception ex) { diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerLogScope.cs b/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerLogScope.cs index 61dd375b72..f8157b3b65 100644 --- a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerLogScope.cs +++ b/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerLogScope.cs @@ -30,9 +30,17 @@ namespace Microsoft.AspNetCore.SignalR.Tests private void ServerFixtureOnServerLogged(LogRecord logRecord) { + var write = logRecord.Write; + + if (write == null) + { + _scopeLogger.LogWarning("Server log has no data."); + return; + } + // Create (or get) a logger with the same name as the server logger - var logger = _serverLoggers.GetOrAdd(logRecord.Write.LoggerName, loggerName => _loggerFactory.CreateLogger(loggerName)); - logger.Log(logRecord.Write.LogLevel, logRecord.Write.EventId, logRecord.Write.State, logRecord.Write.Exception, logRecord.Write.Formatter); + var logger = _serverLoggers.GetOrAdd(write.LoggerName, loggerName => _loggerFactory.CreateLogger(loggerName)); + logger.Log(write.LogLevel, write.EventId, write.State, write.Exception, write.Formatter); } public void Dispose()