public async Task SignOutSettingMessage() { var setting = new TestSettings(opt => { opt.ClientId = "Test Id"; opt.SignInScheme = CookieAuthenticationDefaults.AuthenticationScheme; opt.Configuration = new OpenIdConnectConfiguration { EndSessionEndpoint = "https://example.com/signout_test/signout_request" }; }); var server = setting.CreateTestServer(); var transaction = await server.SendAsync(DefaultHost + TestServerBuilder.Signout); var res = transaction.Response; Assert.Equal(HttpStatusCode.Redirect, res.StatusCode); Assert.NotNull(res.Headers.Location); setting.ValidateSignoutRedirect( transaction.Response.Headers.Location, OpenIdConnectParameterNames.SkuTelemetry, OpenIdConnectParameterNames.VersionTelemetry); }
public async Task SignOutRedirectWithDefaultRedirectUri() { var settings = new TestSettings(o => { o.AuthenticationMethod = OpenIdConnectRedirectBehavior.RedirectGet; o.Authority = TestServerBuilder.DefaultAuthority; o.ClientId = "Test Id"; }); var server = settings.CreateTestServer(); var transaction = await server.SendAsync(DefaultHost + TestServerBuilder.Signout); Assert.Equal(HttpStatusCode.Redirect, transaction.Response.StatusCode); settings.ValidateSignoutRedirect(transaction.Response.Headers.Location, OpenIdConnectParameterNames.PostLogoutRedirectUri); }
public async Task EndSessionRequestDoesNotIncludeTelemetryParametersWhenDisabled() { var configuration = TestServerBuilder.CreateDefaultOpenIdConnectConfiguration(); var setting = new TestSettings(opt => { opt.ClientId = "Test Id"; opt.Configuration = configuration; opt.SignInScheme = CookieAuthenticationDefaults.AuthenticationScheme; opt.DisableTelemetry = true; }); var server = setting.CreateTestServer(); var transaction = await server.SendAsync(DefaultHost + TestServerBuilder.Signout); var res = transaction.Response; Assert.Equal(HttpStatusCode.Redirect, res.StatusCode); Assert.DoesNotContain(OpenIdConnectParameterNames.SkuTelemetry, res.Headers.Location.Query); Assert.DoesNotContain(OpenIdConnectParameterNames.VersionTelemetry, res.Headers.Location.Query); setting.ValidateSignoutRedirect(transaction.Response.Headers.Location); }