private void SetupEmailSenderTest() { repoMock = new Mock <IApplicationUserRepository>(); repoMock.Setup(rm => rm.GetList(It.IsAny <ISpecification <ApplicationUser> >())).Returns( new List <ApplicationUser> { new ApplicationUser { Id = "userId", UserName = "******" } }); senderMock = new Mock <IEmailConfirmationSender>(); factoryMock = new Mock <IPasswordResetFactory>(); factoryMock.Setup(fm => fm.CreateCofirmationSender()).Returns(senderMock.Object); var urlMock = new Mock <IUrlHelper>(); var requestMock = new Mock <HttpRequest>(); var httpContext = new Mock <HttpContext>(); httpContext.Setup(hm => hm.Request).Returns(requestMock.Object); var notificationMock = new Mock <INotificationProvider>(); controller = new PasswordResetController(factoryMock.Object, repoMock.Object, notificationMock.Object); controller.Url = urlMock.Object; controller.ControllerContext.HttpContext = httpContext.Object; }
public async Task Setup() { context = await TestDatabase.GetDatabaseContext(); mockUsersService = new MockUsersService(context); mockAppsService = new MockAppsService(context); sut = new PasswordResetController( mockUsersService.UsersServiceSuccessfulRequest.Object, mockAppsService.AppsServiceSuccessfulRequest.Object); passwordResetToken = Guid.NewGuid().ToString(); }
private void ProcessPasswordResetRequest(UserModel user) { PasswordResetController passwordResetController = new PasswordResetController(); PasswordResetModel passwordResetModel = new PasswordResetModel(); passwordResetModel.PasswordResetKey = Guid.NewGuid(); passwordResetModel.UserId = user.Id; passwordResetModel.Completed = false; passwordResetModel.Id = passwordResetController.SavePasswordReset(passwordResetModel); Mailer.MailUserPasswordResetRequest(passwordResetModel, user); }
public async void CreatePasswordConfirmatorBeforeResetingPassword() { repoMock = new Mock <IApplicationUserRepository>(); confirmatorMock = new Mock <IEmailConfirmator>(); factoryMock = new Mock <IPasswordResetFactory>(); factoryMock.Setup(fm => fm.CreateConfirmator()).Returns(confirmatorMock.Object); var notificationMock = new Mock <INotificationProvider>(); controller = new PasswordResetController(factoryMock.Object, repoMock.Object, notificationMock.Object); await controller.ChangePasswordAsync("id", "token", "password"); factoryMock.Verify(fm => fm.CreateConfirmator(), Times.Once()); }
public void RetutnViewWithIdAndToken() { repoMock = new Mock <IApplicationUserRepository>(); factoryMock = new Mock <IPasswordResetFactory>(); var notificationMock = new Mock <INotificationProvider>(); controller = new PasswordResetController(factoryMock.Object, repoMock.Object, notificationMock.Object); var view = controller.ChangePassword("xd", "discard"); var viewResult = Assert.IsType <ViewResult>(view); Assert.Equal("xd", viewResult.ViewData["id"]); Assert.Equal("discard", viewResult.ViewData["token"]); }
private void ProcessPasswordReset() { if (ViewState["ResetId"].ToString() != "") { PasswordResetController controller = new PasswordResetController(); PasswordResetModel passwordResetModel = controller.LoadPasswordResetByKey(new Guid(ViewState["ResetId"].ToString())); if (passwordResetModel != null && passwordResetModel.Completed == false) { UserController userController = new UserController(); UserModel userModel = userController.LoadUser(passwordResetModel.UserId.ToString()); userModel.CreateOrReset = true; userModel.Password = ReEnterPasswordTextBox.Text; userController.SaveUser(userModel); passwordResetModel.Completed = true; controller.SavePasswordReset(passwordResetModel); Logger.CreateLog("Password reset done for user " + userModel.UserName, 1); PasswordResetLabel.Text = "Password reset. Please click <a href='Default.aspx'>here</a> to login."; ResetPasswordPanel.Visible = false; } else { PasswordResetLabel.Text = "Password reset code already used. Please create a <a href='RetrievePassword.aspx'>new</a> reset request."; ResetPasswordPanel.Visible = false; } } }