public void Login_CanNotAuthenticateUser() { // Arrange UserClientMock.Setup(x => x.AuthenticateUser(It.IsAny <string>(), It.IsAny <string>())).Returns((IdentityUser)null); // Act var result = AccountController.Login(new LoginViewModel(), string.Empty).Result; // Assert AccountController.ModelState[string.Empty].Errors.First().ErrorMessage .Should().Be("Login unsuccessful. Check your user name and password."); AssertNeverSignedIn(); result.Should().NotBeNull(); }
public void Login_UserClientThrowsException() { // Arrange UserClientMock.Setup(x => x.AuthenticateUser(It.IsAny <string>(), It.IsAny <string>())).Throws <AuthenticatedUserClientException>(); // Act Task <ActionResult> result = AccountController.Login(new LoginViewModel(), string.Empty); // Assert AccountController.ModelState[string.Empty].Errors.First().ErrorMessage .Should().Be("There was a problem. Contact your administrator or try again later."); AssertNeverSignedIn(); result.Should().NotBeNull(); }
public void Login_HappyPath() { // Arrange const string username = "******"; const string password = "******"; var loginModel = new LoginViewModel { UserName = username, Password = password, RememberMe = true }; string returnUrl = string.Empty; var identityUser = new IdentityUser(); UserClientMock.Setup(client => client.AuthenticateUser(username, password)).Returns(identityUser); // Act ActionResult result = AccountController.Login(loginModel, returnUrl).Result; // Assert SignInManagerMock.Verify(x => x.SignInAsync(identityUser, true, true)); result.Should().NotBeNull(); }