public void Correct_GetTraceIdFromHeader() { var httpContextAccessor = MockServicesHelper.CreateHttpContextAccessor(requestHeaders: MockStaticData.RequestHeadersWithTrackIds); var traceIdGenerator = new HttpHeaderTraceIdGenerator(httpContextAccessor); Assert.AreEqual(traceIdGenerator.GenerateTraceId(), MockStaticData.TraceId); }
public void GetClientUniqueId_CookieDoesntExist() { var generator = new CookieClientIdGenerator(MockServicesHelper .CreateHttpContextAccessor(), null); Assert.True(Guid.TryParse(generator.GenerateClientId(), out Guid clientUniqueId)); }
public void GetClientUniqueId_CookieExists() { var httpContextAccessor = MockServicesHelper .CreateHttpContextAccessor(requestCookie: MockStaticData.RequestCookiesWithTrackIds); var generator = new CookieClientIdGenerator(httpContextAccessor, null); Assert.AreEqual(generator.GenerateClientId(), MockStaticData.UserUniqueId); }
public void ThrowException_TrafficLogParamsNull() { var trafficLogFactory = MockServicesHelper.CreateTrafficLog(); var startDateUtc = DateTime.UtcNow; var endDateUtc = DateTime.UtcNow; Assert.Throws <ArgumentNullException>(() => trafficLogFactory.Create()); }
public void IgnoreCookies() { var httpContextAccessor = MockServicesHelper.CreateHttpContextAccessor(MockStaticData.HttpMethodGet); var requestLogFactory = MockServicesHelper.CreateRequestLogFactory(httpContextAccessor: httpContextAccessor, requestLogFactoryConfig: MockStaticData.RequestLogFactoryConfig_Ignore); var requestLog = requestLogFactory.Create(MockStaticData.RequestBody); Assert.NotNull(requestLog); Assert.False(requestLog.Cookies.ContainsKey(MockStaticData.RequestCookieToIgnore)); }
public void ResponseLogShouldBeNull() { var trafficLogFactory = MockServicesHelper.CreateTrafficLog(); var mockTrafficLogParams = MockServicesHelper.CreateTrafficLogParams(out DateTime startDateUtc, out DateTime endDateUtc); var trafficLog = trafficLogFactory.Create(mockTrafficLogParams, ignoreResponse: true); Assert.NotNull(trafficLog); Assert.Null(trafficLog.Response); }
public void ThrowException_ResponseLogNull() { var mockResponseFactory = new Mock <IResponseLogFactory>(); mockResponseFactory.Setup(x => x.Create(It.IsAny <string>())).Returns((IResponseLog)null); var trafficLogFactory = MockServicesHelper.CreateTrafficLog(responseLogFactory: mockResponseFactory.Object); var mockTrafficLogParams = MockServicesHelper.CreateTrafficLogParams(out DateTime startDateUtc, out DateTime endDateUtc); Assert.Throws <NullReferenceException>(() => trafficLogFactory.Create(mockTrafficLogParams)); }
public void ThrowException_ClientIpAddressNull() { var mockIpAddressReader = new Mock <IIpAddressReader>(); mockIpAddressReader.Setup(x => x.GetClientIpAddress()).Returns((string)null); var trafficLogFactory = MockServicesHelper.CreateTrafficLog(ipAddressReader: mockIpAddressReader.Object); var mockTrafficLogParams = MockServicesHelper.CreateTrafficLogParams(out DateTime startDateUtc, out DateTime endDateUtc); Assert.Throws <NullReferenceException>(() => trafficLogFactory.Create(mockTrafficLogParams)); }
public void CreateCorrectResponseLog() { var httpContextAccessor = MockServicesHelper.CreateHttpContextAccessor(); var responseLogFactory = MockServicesHelper.CreateResponseLogFactory(httpContextAccessor: httpContextAccessor); var responseLog = responseLogFactory.Create(MockStaticData.RequestBody); Assert.NotNull(responseLog); Assert.AreEqual(responseLog.Body, MockStaticData.RequestBody); Assert.AreEqual(responseLog.Status, 200); Assert.AreEqual(responseLog.Headers, MockStaticData.ResponseHeaders.ToDictionary(x => x.Key, y => y.Value)); Assert.AreEqual(responseLog.CustomParams, MockStaticData.ResponseCustomParams); }
public void ThrowException_MachineNameNull() { var mockMachineReader = new Mock <IMachineNameReader>(); mockMachineReader.Setup(x => x.GetMachineName()).Returns((string)null); var trafficLogFactory = MockServicesHelper.CreateTrafficLog(machineNameReader: mockMachineReader.Object); var mockTrafficLogParams = MockServicesHelper.CreateTrafficLogParams(out DateTime startDateUtc, out DateTime endDateUtc); Assert.Throws <NullReferenceException>(() => trafficLogFactory.Create(mockTrafficLogParams)); }
public void CreateCorrectRequestLog() { var httpContextAccessor = MockServicesHelper.CreateHttpContextAccessor(MockStaticData.HttpMethodGet); var requestLogFactory = MockServicesHelper.CreateRequestLogFactory(httpContextAccessor: httpContextAccessor); var requestLog = requestLogFactory.Create(MockStaticData.RequestBody); Assert.NotNull(requestLog); Assert.AreEqual(requestLog.Body, MockStaticData.RequestBody); Assert.AreEqual(requestLog.Headers, MockStaticData.RequestHeaders.ToDictionary(x => x.Key, y => y.Value)); Assert.AreEqual(requestLog.Cookies, MockStaticData.RequestCookies.ToDictionary(x => x.Key, y => y.Value)); Assert.AreEqual(requestLog.HttpMethod, MockStaticData.HttpMethodGet); Assert.AreEqual(requestLog.Path, MockStaticData.RequestPath); Assert.AreEqual(requestLog.CustomParams, MockStaticData.RequestCustomParams); }
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))); }
public void ThrowException_GetTraceIdFromHeader() { var traceIdGenerator = new HttpHeaderTraceIdGenerator(MockServicesHelper.CreateHttpContextAccessor()); Assert.Throws <NullReferenceException>(() => traceIdGenerator.GenerateTraceId()); }