public ActionResult ConfirmResetPassword(ConfirmResetPasswordModel model) { if (ModelState.IsValid) { // Attempt to reset password bool succeed = UserAuthenticationService.ConfirmResetPassword(model.Username, model.VerifyToken, model.NewPassword); if (succeed) { FormsService.SignIn(model.Username, false /* createPersistentCookie */); return RedirectToAction("Index", "Home"); } else { ModelState.AddModelError(string.Empty, "Unable to reset password. Please contact administrator."); } } return View(model); }
public void Confirm_reset_password_post_returns_view_if_fails() { // Arrange AccountController controller = GetAccountController(); ConfirmResetPasswordModel model = new ConfirmResetPasswordModel() { Username = "******", VerifyToken = "validToken", NewPassword = "******" }; // Act ActionResult result = controller.ConfirmResetPassword(model); // Assert var viewModel = result.AssertViewRendered().WithViewData<ConfirmResetPasswordModel>(); Assert.AreEqual(model, viewModel); Assert.AreEqual("Unable to reset password. Please contact administrator.", controller.ModelState[""].Errors[0].ErrorMessage); }
public void Confirm_reset_password_post_returns_view_if_model_state_is_invalid() { // Arrange AccountController controller = GetAccountController(); ConfirmResetPasswordModel model = new ConfirmResetPasswordModel() { Username = "******", VerifyToken = "validToken", NewPassword = "******" }; controller.ModelState.AddModelError("", "Dummy error message."); // Act ActionResult result = controller.ConfirmResetPassword(model); // Assert var viewModel = result.AssertViewRendered().WithViewData<ConfirmResetPasswordModel>(); Assert.AreEqual(model, viewModel); }
public void Confirm_reset_password_post_returns_redirect_on_success() { // Arrange AccountController controller = GetAccountController(); ConfirmResetPasswordModel model = new ConfirmResetPasswordModel() { Username = "******", VerifyToken = "validToken", NewPassword = "******" }; // Act ActionResult result = controller.ConfirmResetPassword(model); // Assert result.AssertActionRedirect() .ToController("Home") .ToAction("Index"); }