public async Task <ActionResult> ForgotPassword(ForgotPasswordViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = await UserManager.FindByNameAsync(model.Email);

                if (user == null)
                {
                    ModelState.AddModelError("", "E-mail address did not find.");
                    return(View());
                }

                var code = await UserManager.GeneratePasswordResetTokenAsync(user.Id);

                var callbackUrl = Url.Action("ResetPassword", "Identity", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);

                #region Forgot Password Mail

                SchedulerMailService schedulerMailService = new SchedulerMailService();

                // Send reset password mail
                schedulerMailService.SendNewPasswordMail(callbackUrl, user.Id, user.Email);

                #endregion
                ViewBag.Link = callbackUrl;
                return(View("ForgotPasswordConfirmation"));
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
Пример #2
0
        public void GetSender_Give_SchedulerMailSender()
        {
            var stub = Mock.Of <IMailSender>();

            var actual = new SchedulerMailService().GetScheduler(stub);

            Assert.IsInstanceOfType(actual, typeof(SchedulerMailSender));
        }
Пример #3
0
        public void GetSender_Give_NotNull_Stub_Test()
        {
            var stub = Mock.Of <IMailSender>();

            _schedulerMailService = new SchedulerMailService();
            var expected = new SchedulerMailSender(stub);

            var actual = _schedulerMailService.GetScheduler(stub);

            Assert.IsNotNull(actual);
            Assert.AreEqual(expected.ToString(), actual.ToString());
        }