public void InitializeDoesNotThrowIfRequestTelemetryIsUnavailable() { var ac = new HttpContextAccessor() { HttpContext = new DefaultHttpContext() }; var initializer = new WebUserTelemetryInitializer(ac); initializer.Initialize(new RequestTelemetry()); }
public void InitializeSetsUserFromCookie() { var requestTelemetry = new RequestTelemetry(); var contextAccessor = HttpContextAccessorHelper.CreateHttpContextAccessor(requestTelemetry); contextAccessor.HttpContext.Request.Headers["Cookie"] = "ai_user=test"; var initializer = new WebUserTelemetryInitializer(contextAccessor); initializer.Initialize(requestTelemetry); Assert.Equal("test", requestTelemetry.Context.User.Id); }
public void InitializeDoesNotOverrideUserProvidedInline() { var requestTelemetry = new RequestTelemetry(); requestTelemetry.Context.User.Id = "Inline"; var contextAccessor = HttpContextAccessorHelper.CreateHttpContextAccessor(requestTelemetry); contextAccessor.HttpContext.Request.Headers["Cookie"] = "ai_user=test"; var initializer = new WebUserTelemetryInitializer(contextAccessor); initializer.Initialize(requestTelemetry); Assert.Equal("Inline", requestTelemetry.Context.User.Id); }
public void InitializeThrowIfHttpContextAccessorIsNull() { Assert.Throws<ArgumentNullException>(() => { var initializer = new WebUserTelemetryInitializer(null); }); }