public async Task WhenSignOutCalledWithOutRedirectUrlThenRedirectToRedirectUrl() { A.CallTo(() => authClient.GetSignOutUrl(A <string> .Ignored)).Returns("test"); var settings = Options.Create(new AuthSettings()); using var controller = new AuthController(authClient, log, settings, defaultVersionedFiles, defaultConfiguration, baseUrlService) { ControllerContext = new ControllerContext { HttpContext = defaultContext, }, }; var redirecturl = "redirect.com"; var result = await controller.SignOut(redirecturl).ConfigureAwait(false) as RedirectResult; A.CallTo(() => authClient.GetSignOutUrl(redirecturl)).MustHaveHappened(); }
public async Task <IActionResult> SignOut(string redirectUrl) { var Url = GenerateSignOutUrl(redirectUrl); var signInUrl = await authClient.GetSignOutUrl(Url); await HttpContext.SignOutAsync(CookieAuthenticationDefaults.AuthenticationScheme); return(Redirect(signInUrl)); }
public async Task <IActionResult> SignOut(string redirectUrl) { redirectUrl = string.IsNullOrEmpty(redirectUrl) ? Request.Headers["Referer"].ToString() : redirectUrl; var signInUrl = await authClient.GetSignOutUrl(redirectUrl).ConfigureAwait(false); await HttpContext.SignOutAsync(CookieAuthenticationDefaults.AuthenticationScheme).ConfigureAwait(false); return(Redirect(signInUrl)); }