public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (ModelState.IsValid) { try { if (await _userRepository.AuthenticateAsync(model.UserName, model.Password)) { var user = _userRepository.GetByUserName(model.UserName); if (user != null) { SignIn(user, model.RememberMe); return(RedirectToLocal(returnUrl)); } } ModelState.AddModelError(string.Empty, Resources.Invalid_Username_Password); } catch (Exception) { ModelState.AddModelError(string.Empty, Resources.Invalid_Username_Password); } } return(View(model)); }
public void Authenticate_with_password() { var user = new CcmUser { UserName = $"User{DateTime.Now:yyyyMMddHHmmss}", FirstName = "Förnamn", LastName = "Efternamn", Password = "******", Comment = "Testanvändare" }; var createResult = _sut.Create(user); Assert.IsTrue(createResult); Assert.IsFalse(_sut.AuthenticateAsync("", "Pepparkaka").Result); Assert.IsFalse(_sut.AuthenticateAsync(user.UserName, "Lingonkaka").Result); Assert.IsTrue(_sut.AuthenticateAsync(user.UserName, "Pepparkaka").Result); // Clean up _sut.Delete(user.Id); }