示例#1
0
        public async Task <IActionResult> SignIn(string redirectUrl)
        {
            SetRedirectUrl(GetRedirectURl(redirectUrl));
            var signInUrl = await authClient.GetSignInUrl();

            return(Redirect(signInUrl));
        }
        public async Task WhenSignInCalledWithOutRedirectUrlThenDoNotSetSessionRedirect()
        {
            A.CallTo(() => authClient.GetSignInUrl()).Returns("test");
            var settings = Options.Create(new AuthSettings());
            var session  = new MockHttpSession();

            using var controller = new AuthController(authClient, log, settings, defaultVersionedFiles, defaultConfiguration, baseUrlService)
                  {
                      ControllerContext = new ControllerContext
                      {
                          HttpContext = new DefaultHttpContext
                          {
                              User    = new ClaimsPrincipal(new ClaimsIdentity(new List <Claim>())),
                              Session = session,
                          },
                      },
                  };

            var result = await controller.SignIn(string.Empty).ConfigureAwait(false) as RedirectResult;

            A.CallTo(() => authClient.GetSignInUrl()).MustHaveHappened();
            Assert.Null(session.GetString(AuthController.RedirectSessionKey));
        }