public void Can_Redirect_ToHomeIndex_IfUserExists() { var identifier = Identifier.Parse("http://uniqueId/"); var mockAuthResponse = new Mock<IAuthenticationResponse>(); mockAuthResponse.SetupGet(res => res.ClaimedIdentifier).Returns(identifier); //mockAuthResponse.SetupGet(res => res.FriendlyIdentifierForDisplay).Returns("FriendlyId"); mockAuthResponse.SetupGet(res => res.Status).Returns(AuthenticationStatus.Authenticated); userRepo.Setup(k => k.FindByOpenId(identifier.ToString())).Returns(new User() { DisplayName = "Test Display Name"}); openIdService.Setup(k => k.GetResponse()).Returns(mockAuthResponse.Object); sessionState.SetupSet(k => { k[SessionConstants.OpenId] = identifier; }); sessionState.SetupSet(k => { k[SessionConstants.DisplayName] = "Test Display Name"; }); var ac = new AccountController(formService.Object, memberService.Object, userRepo.Object, openIdService.Object); ac.ControllerContext = new ControllerContext(mockhttpContext.Object, new RouteData(), ac); var result = ac.LogOn().ReturnsRedirectToRouteResult().RedirectsTo<HomeController>(ctrller=>ctrller.Index()); sessionState.VerifyAll(); mockAuthResponse.VerifyAll(); userRepo.VerifyAll(); openIdService.VerifyAll(); }
public void Can_Redirect_IfUserHasSessionAlready() { var ac = new AccountController(formService.Object, memberService.Object, userRepo.Object, openIdService.Object); sessionState.SetupGet(k => k[SessionConstants.OpenId]).Returns("blah blah"); ac.ControllerContext = new ControllerContext(mockhttpContext.Object, new RouteData(), ac); var result = ac.LogOn().ReturnsRedirectToRouteResult().RedirectsTo<HomeController>(ctrller => ctrller.Index()); }