public void Can_Log_In() { // Arrange LogOnViewModel model = new LogOnViewModel { Email = "*****@*****.**", Password = "******" }; // Act ActionResult res = accountController.LogOn(model,"/Index"); // Assert Assert.IsInstanceOf(typeof(RedirectResult), res); Assert.AreEqual("/Index", ((RedirectResult)res).Url); }
public void Forgot_Password_Working() { // Arrange LogOnViewModel model = new LogOnViewModel { Email = "*****@*****.**", Password = "******" }; // Act ActionResult res = accountController.ForgotPassword(model); // Assert mock.Verify(m => m.ForgotPassword(model.Email)); Assert.IsInstanceOf(typeof(RedirectToRouteResult), res); }
public void Forgot_Password_Not_Working_When_User_Dont_Exist() { // Arrange LogOnViewModel model = new LogOnViewModel { Email = "*****@*****.**", Password = "******" }; // Act ActionResult res = accountController.ForgotPassword(model); // Assert Assert.IsInstanceOf(typeof(RedirectToRouteResult), res); }
public void Can_Not_Log_In() { // Arrange LogOnViewModel model = new LogOnViewModel { Email = "*****@*****.**", Password = "******" }; // Act ActionResult res = accountController.LogOn(model,"/Index"); // Assert Assert.IsInstanceOf(typeof(ViewResult), res); Assert.IsFalse(((ViewResult)res).ViewData.ModelState.IsValid); }
public ActionResult LogOn(LogOnViewModel model, string returnUrl) { if (ModelState.IsValid) { if (accountRepository.Authenticate(model.Email, model.Password)) { return Redirect(String.IsNullOrEmpty(returnUrl) ? Url.Action("/"): returnUrl); } else { ModelState.AddModelError("", "Incorrect email or password"); TempData["ForgotPassword"] = "******"; } } return View(); }
public ActionResult ForgotPassword(LogOnViewModel model) { if (ModelState.IsValid) { User userExist = accountRepository.GetUserByEmail(model.Email); if (userExist != null) { accountRepository.ForgotPassword(model.Email); this.Success(string.Format("New password sent to {0}", model.Email)); } else { this.Error(string.Format("Email not found: {0}", model.Email)); } } return RedirectToAction("LogOn", "Account"); }