public static void ResetPassword_Succeed(string UserEmailValid, Guid CantAccessMyAccountToken, string NewPassword)
 {
     ControllerFake<UserAccountController, ResetPasswordClientModel> controller = new ControllerFake<UserAccountController, ResetPasswordClientModel>();
     ResetPasswordClientModel model = new ResetPasswordClientModel() { NewPassword = NewPassword, ConfirmPassword = NewPassword };
     ActionResult actionResult = controller.Controller.ResetPassword(CantAccessMyAccountToken.ToString(), model);
     Assert.AreEqual(true, actionResult.GetType() == typeof(RedirectResult));
     Assert.AreEqual(true, (((RedirectResult)actionResult).Url == controller.Controller.RedirectResultOnLogIn().Url));
 }
        public ActionResult ResetPassword(object id, ResetPasswordClientModel model)
        {
            if (this.RequestType() == HttpVerbs.Get)
            {
                model = new ResetPasswordClientModel();
                model.BaseViewModelInfo.Title = $customNamespace$.Resources.Account.AccountResources.ChangePassword;
                model.MinPasswordLength = this.FormsMembershipService.Settings().Data.MinRequiredPasswordLength;
                return View(model);
            }

            model.BaseViewModelInfo.Title = $customNamespace$.Resources.Account.AccountResources.ChangePassword;
            model.MinPasswordLength = this.FormsMembershipService.Settings().Data.MinRequiredPasswordLength;

            if (ModelState.IsValid)
            {
                DataResultUserCantAccess result = this.FormsMembershipService.ResetPassword(Guid.Parse((string)id), model.NewPassword, model.ConfirmPassword);
                model.Result = new DataResultBoolean()
                {
                    IsValid = result.IsValid,
                    Message = result.Message,
                    MessageType = result.MessageType,
                    Data = result.IsValid
                };
                if (result.IsValid)
                {
                    return this.RedirectResultOnLogIn();
                }
                else
                {
                    ModelState.AddModelError("InvalidPassword", result.Message);
                }
            }
            return View(model);
        }