public async Task InvokeAsyncTestBeginsLoggingScopeWithNoToken() { _mockTokenFactory.Setup(x => x.Create(_httpContext.Request.Headers, ITokenFactory.DefaultHeaderName)).Returns((Token)null); var sut = new LoggingScopeMiddleware(null); await sut.InvokeAsync(_httpContext, _mockTokenFactory.Object, _mockLogger.Object).ConfigureAwait(false); var expectedState = $"CorrelationId: {_correlationId}; UserEmail: (null)"; _mockLogger.Verify(x => x.BeginScope(It.Is <object>(y => y.ToString() == expectedState)), Times.Once()); }
public async Task InvokeAsyncTestBeginsLoggingScope(string email) { _token.Email = email; var sut = new LoggingScopeMiddleware(null); await sut.InvokeAsync(_httpContext, _mockTokenFactory.Object, _mockLogger.Object).ConfigureAwait(false); var expectedState = $"CorrelationId: {_correlationId}; UserEmail: {email ?? "(null)"}"; _mockLogger.Verify(x => x.BeginScope(It.Is <object>(y => y.ToString() == expectedState)), Times.Once()); }
public async Task RequestDelegateCalled() { var requestDelegateCalled = false; RequestDelegate next = (httpContext) => { requestDelegateCalled = true; return(Task.CompletedTask); }; var sut = new LoggingScopeMiddleware(next); var httpContext = new DefaultHttpContext(); // Act await sut.InvokeAsync(httpContext, _mockTokenFactory.Object, _mockLogger.Object).ConfigureAwait(false); // Assert requestDelegateCalled.Should().BeTrue(); }