public async void AuthenticatorLoginShouldLoginWhenServiceReturnsUser() { User user = new User(); user.Id = 1; user.Name = "a"; LoginAttempt attempt = new LoginAttempt(user); LoginModel model = new LoginModel(); model.Login = "******"; model.Password = "******"; ILoginService service = MockRepository.GenerateStub <ILoginService>(); ISessionHelper session = MockRepository.GenerateStub <ISessionHelper>(); IFormsAuthentication forms = MockRepository.GenerateStub <IFormsAuthentication>(); service.Stub(s => s.Login(model.Login, model.Password)).Return(Task <LoginAttempt> .FromResult(attempt)); Authenticator authenticator = new Authenticator(service, session, forms); bool result = await authenticator.Login(model); Assert.IsTrue(result); service.AssertWasCalled(s => s.Login(model.Login, model.Password)); Assert.AreEqual(session.User.Id, user.Id); forms.AssertWasCalled(f => f.SetAuthCookie(model.Login, true)); }
public void AuthenticationLogoutShouldClearSessionAndSingout() { ISessionHelper session = MockRepository.GenerateStub <ISessionHelper>(); IFormsAuthentication forms = MockRepository.GenerateStub <IFormsAuthentication>(); Authenticator authenticator = new Authenticator(null, session, forms); authenticator.Logout(); session.AssertWasCalled(s => s.Clear()); forms.AssertWasCalled(f => f.SignOut()); }
public void RemoveAuthenticationCookie_should_delegate_to_formsAuthentication() { userService.RemoveAuthenticationCookie(); formsAuthentication.AssertWasCalled(x => x.SignOut()); }