public async Task IgnoredRequest() { var middlewareConfig = new RequestReadMiddlewareConfig { IgnoreUrls = new[] { MockStaticData.RequestPath } }; await RunMiddlewareWithConfiguration(middlewareConfig); }
public async Task StopLogging() { var middlewareConfig = new RequestReadMiddlewareConfig { StopLogging = true }; await RunMiddlewareWithConfiguration(middlewareConfig); }
internal async Task RunMiddlewareWithConfiguration(RequestReadMiddlewareConfig config) { var accessor = new TrafficCometMiddlewaresAccessor(); var bodyReader = IStringBodyReaderMockFactory.CreateMockObject(MockStaticData.RequestBody); var requestReadMiddleware = RequestReadMiddlewareMockFactory.CreateMockObject( out HttpContext httpContext, config); await requestReadMiddleware.Invoke(httpContext, accessor, bodyReader); Assert.IsNull(accessor.RequestBody); Assert.NotNull(httpContext.Request.Body); Assert.AreEqual(httpContext.Request.Body.Position, 0L); }
public async Task StopLoggingFileRequests() { var accessor = new TrafficCometMiddlewaresAccessor(); var bodyReader = IStringBodyReaderMockFactory.CreateMockObject(MockStaticData.RequestBody); var middlewareConfig = new RequestReadMiddlewareConfig { StartLoggingFileRequest = false }; var requestReadMiddleware = RequestReadMiddlewareMockFactory.CreateMockObject(out HttpContext httpContext, middlewareConfig, "/bootstrap.css"); await requestReadMiddleware.Invoke(httpContext, accessor, bodyReader); Assert.IsNull(accessor.RequestBody); Assert.NotNull(httpContext.Request.Body); Assert.AreEqual(httpContext.Request.Body.Position, 0L); }
internal static RequestReadMiddleware CreateMockObject(out HttpContext httpContext, RequestReadMiddlewareConfig config = null, string requestPath = null) { var mockHttpRequest = HttpMockFactory.CreateHttpRequestMockObject(new PathString(requestPath ?? MockStaticData.RequestPath), new QueryString(), MockStaticData.HttpMethodPost); var requestMemoryStream = new MemoryStream(Encoding.UTF8.GetBytes(MockStaticData.RequestBody)); mockHttpRequest.AddBody(requestMemoryStream); var httpResponse = HttpMockFactory.CreateHttpResponseMockObject(200, new MemoryStream(Encoding.UTF8.GetBytes(MockStaticData.ResponseBody)), MockStaticData.RequestHeaders); var connectionInfo = HttpMockFactory.CreateConnectionInfoMockObject(MockStaticData.IPAddress1, MockStaticData.Port1, MockStaticData.IPAddress2, MockStaticData.Port2); httpContext = HttpMockFactory.CreateHttpContextMockObject(mockHttpRequest.Object, httpResponse, connectionInfo); var middlewareConfig = config ?? new RequestReadMiddlewareConfig(); return(new RequestReadMiddleware(MockServicesHelper.FakeRequestDelegate, MockServicesHelper.CreateOptionsMock(middlewareConfig))); }