public void ChangePasswordPostRedirectsOnSuccess() { // Arrange AccountController controller = GetAccountController(); // Act RedirectToRouteResult result = (RedirectToRouteResult)controller.ChangePassword("oldPass", "newPass", "newPass"); // Assert Assert.AreEqual("ChangePasswordSuccess", result.RouteValues["action"]); }
public void ChangePasswordGetReturnsView() { // Arrange AccountController controller = GetAccountController(); // Act ViewResult result = (ViewResult)controller.ChangePassword(); // Assert Assert.AreEqual(6, result.ViewData["PasswordLength"]); }
public void ChangePassword_Get_ReturnsView() { // Arrange AccountController controller = GetAccountController(); // Act ActionResult result = controller.ChangePassword(); // Assert Assert.IsInstanceOfType(result, typeof(ViewResult)); }
public void ChangePasswordSuccess() { // Arrange AccountController controller = GetAccountController(); // Act var result = (JsonResult)controller.ChangePassword("oldPass", "newPass", "newPass"); // Assert var returnResult = (ReturnResult)result.Data; Assert.AreEqual("修改成功", returnResult.Message); Assert.IsTrue(returnResult.Success); }
public void ChangePassword_Get_ReturnsView() { // Arrange AccountController controller = GetAccountController(); // Act ActionResult result = controller.ChangePassword(); // Assert Assert.IsInstanceOfType(result, typeof(ViewResult)); Assert.AreEqual(10, ((ViewResult)result).ViewData["PasswordLength"]); }
public void ChangePassword_Get_ReturnsView() { // Упорядочение AccountController controller = GetAccountController(); // Действие ActionResult result = controller.ChangePassword(); // Утверждение Assert.IsInstanceOfType(result, typeof(ViewResult)); Assert.AreEqual(10, ((ViewResult)result).ViewData["PasswordLength"]); }
public void ChangePasswordPostReturnsViewIfNewPasswordDoesNotMatchConfirmPassword() { // Arrange AccountController controller = GetAccountController(); // Act ViewResult result = (ViewResult)controller.ChangePassword("currentPassword", "newPassword", "otherPassword"); // Assert Assert.AreEqual(6, result.ViewData["PasswordLength"]); Assert.AreEqual("The new password and confirmation password do not match.", result.ViewData.ModelState["_FORM"].Errors[0].ErrorMessage); }
public void ChangePasswordPostReturnsViewIfCurrentPasswordNotSpecified() { // Arrange AccountController controller = GetAccountController(); // Act ViewResult result = (ViewResult)controller.ChangePassword("", "newPassword", "newPassword"); // Assert Assert.AreEqual(6, result.ViewData["PasswordLength"]); Assert.AreEqual("You must specify a current password.", result.ViewData.ModelState["currentPassword"].Errors[0].ErrorMessage); }
public void Change_Password_Post_Returns_View_If_New_Password_Is_Null() { // Arrange AccountController controller = GetAccountController(); // Act ViewResult result = (ViewResult)controller.ChangePassword("currentPassword", null, null); // Assert Assert.AreEqual(6, result.ViewData["PasswordLength"]); Assert.AreEqual("You must specify a new password of 6 or more characters.", result.ViewData.ModelState["newPassword"].Errors[0].ErrorMessage); }
public void ChangePasswordPostReturnsViewIfNewPasswordIsTooShort() { // Arrange AccountController controller = GetAccountController(); // Act ViewResult result = (ViewResult)controller.ChangePassword("currentPassword", "12345", "12345"); // Assert Assert.AreEqual(6, result.ViewData["PasswordLength"]); Assert.AreEqual("Você deve digitar uma senha de 6 ou mais caracteres.", result.ViewData.ModelState["newPassword"].Errors[0].ErrorMessage); }
public void ChangePassword() { // Arrange var securityAdapter = new Mock <ISecurityAdapter>(); var controller = new AccountController(securityAdapter.Object); // Act var result = controller.ChangePassword(); // Assert Assert.IsType <ViewResult>(result); }
public void ChangePasswordPostReturnsViewIfNewPasswordIsTooShort() { // Arrange AccountController controller = GetAccountController(); // Act ViewResult result = (ViewResult)controller.ChangePassword("currentPassword", "12345", "12345"); // Assert Assert.AreEqual(6, result.ViewData["PasswordLength"]); Assert.AreEqual("You must specify a new password of 6 or more characters.", result.ViewData.ModelState["newPassword"].Errors[0].ErrorMessage); }
public void ChangePasswordPostReturnsViewIfProviderRejectsPassword() { // Arrange AccountController controller = GetAccountController(); // Act ViewResult result = (ViewResult)controller.ChangePassword("oldPass", "badPass", "badPass"); // Assert Assert.AreEqual(6, result.ViewData["PasswordLength"]); Assert.AreEqual("The current password is incorrect or the new password is invalid.", result.ViewData.ModelState["_FORM"].Errors[0].ErrorMessage); }
public void ChangePasswordGetReturnsView() { // Arrange Mock <CosmoMongerMembershipProvider> mockMembership = new Mock <CosmoMongerMembershipProvider>(); AccountController controller = new AccountController(mockMembership.Object); // Act ViewResult result = (ViewResult)controller.ChangePassword(); // Assert Assert.That(result.ViewData.ModelState.IsValid, "No errors should be returned"); }
public void T01_ChangePassword() { var authController = new AuthController(ObjectFactory.GetInstance <IUserService>(), ObjectFactory.GetInstance <ILoginManager>(), ObjectFactory.GetInstance <IEmailService>()); InitControllerContext(authController, _user); authController.Login(new AuthLogInModel { Email = _user.Email, Password = "******" }); var result = _controller.ChangePassword() as ViewResult; Assert.IsNotNull(result); var model = new AccountChangePasswordModel { CurrentPassword = "", NewPassword = "******", ConfirmNewPassword = "******" }; // Check validation Validate(model); Assert.AreNotEqual(0, Validate(model).Count, "Change password model validation failed"); // Wrong current password model.CurrentPassword = "******"; var wrongResult = _controller.ChangePassword(model) as ViewResult; Assert.IsNotNull(wrongResult); Assert.IsFalse(wrongResult.ViewData.ModelState.IsValid); //Correct password model.CurrentPassword = "******"; _controller.ModelState.Clear(); var postResult = _controller.ChangePassword(model); Assert.IsNotNull(postResult); }
public void ChangePasswordPostReturnsViewIfCurrentPasswordNotSpecified() { // Arrange AccountController controller = GetAccountController(); // Act var JsonResult = (JsonResult)controller.ChangePassword("", "newPassword", "newPassword"); var result = JsonResult.Data as ReturnResult; // Assert Assert.AreEqual("请填写密码", result.Message); Assert.IsFalse(result.Success); }
public void TestChangePasswordReturnBadRequest() { var contextMock = new Mock <HttpContext>(); contextMock.Setup(x => x.User).Returns(new ClaimsPrincipal(claims)); mockAccountService.Setup(x => x.ChangePassword(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(false); var _accountController = new AccountController(mockAccountService.Object, _tokenManager.Object); _accountController.ControllerContext.HttpContext = contextMock.Object; var changePasswordResult = _accountController.ChangePassword(changePasswordModel); var type = changePasswordResult.GetType(); Assert.AreEqual(type.Name, "BadRequestObjectResult"); }
public void ChangePasswordPostReturnsViewIfNewPasswordIsTooShort() { // Arrange AccountController controller = GetAccountController(); // Act var jsonResult = (JsonResult)controller.ChangePassword("currentPassword", "12345", "12345"); var result = jsonResult.Data as ReturnResult; // Assert Assert.AreEqual("请填写一个长度是6或以上的新密码。", result.Message); Assert.IsFalse(result.Success); }
public void ChangePasswordPostReturnsViewIfProviderRejectsPassword() { // Arrange AccountController controller = GetAccountController(); // Act var jsonResult = (JsonResult)controller.ChangePassword("oldPass", "badPass", "badPass"); var result = jsonResult.Data as ReturnResult; // Assert Assert.AreEqual("旧密码不正确或新密码不符合规范.", result.Message); Assert.IsFalse(result.Success); }
public void ChangePasswordPostReturnsViewIfNewPasswordDoesNotMatchConfirmPassword() { // Arrange AccountController controller = GetAccountController(); // Act var jsonResult = (JsonResult)controller.ChangePassword("currentPassword", "newPassword", "otherPassword"); var result = jsonResult.Data as ReturnResult; // Assert Assert.AreEqual("新密码与确认密码不相同.", result.Message); Assert.IsFalse(result.Success); }
public async Task Change_Password_Invalid_Old() { UserManagerMock.Setup(m => m.GetUserAsync(It.IsAny <ClaimsPrincipal>())).ReturnsAsync(new IdentityUser()); UserManagerMock.Setup(m => m.CheckPasswordAsync(It.IsAny <IdentityUser>(), It.IsAny <string>())) .ReturnsAsync(false); var target = new AccountController(UserManagerMock.Object, SignInManagerMock.Object, PasswordValidatorMock.Object); var result = await target.ChangePassword(new PasswordChangeViewModel()) as ViewResult; Assert.NotNull(result); Assert.False(target.ModelState.IsValid); Assert.True(target.ModelState[""].Errors[0].ErrorMessage == "Неправильный старый пароль"); }
public void ChangePassword_LoggedOutUserReturnsCorrectView_ReturnsLoginView() { using (var controller = new AccountController(new UserManagerFake(), new NationalityManagerFake(), new GenderManagerFake(), new SessionHelperFake())) { var result = controller.ChangePassword() as RedirectToRouteResult; var expectedActionName = "Login"; var expectedControllerName = "Login"; Assert.AreEqual(expectedActionName, result.RouteValues["Action"]); Assert.AreEqual(expectedControllerName, result.RouteValues["Controller"]); } }
public void ChangePasswordPost_InvalidPasswordReturnsCorrectMessage_ExpectedMessageEqualsActual() { var session = new SessionHelperFake(); var user = new User { ID = 1, UserName = "******", Email = "*****@*****.**", Bio = "Hello I am the Sixth test user", ProfileImagePath = "../Images/TestUserSix/Profile.png", DateJoined = new DateTime(2017, 1, 14), DOB = new DateTime(1955, 5, 7), GenderId = 1, UserType = new UserType { ID = 2, Description = "FeaturedUser" }, Nationality = new Nationality { ID = 1, Description = "US and A" }, NationalityID = 1, UserTypeID = 2, }; session.Add("CurrentUser", user); var viewModel = new ChangePasswordViewModel { UserName = "******", NewPassword = "******", ConfirmPassword = "******", CurrentPassword = "******" }; var userManager = new UserManagerFake { ValidPassword = "******" }; using (var controller = new AccountController(userManager, new NationalityManagerFake(), new GenderManagerFake(), session)) { var result = controller.ChangePassword(viewModel) as ViewResult; var expectedView = "Invalid Password"; Assert.AreEqual(expectedView, result.ViewBag.Message); } }
public void ChangePasswordShouldChangeThePassword() { //ARRANGE var model = new ChangePassword { OldPassword = "******", NewPassword = "******", ConfirmNewPassword = "******" }; var user = new User { Id = "8285cc79-4561-499c-87cc-2e5997d62c20", UserName = "******" }; var controllerContext = new Mock <ControllerContext>(); controllerContext .Setup(d => d.HttpContext.User.Identity.Name) .Returns("JBurton") .Verifiable("Should check for user"); var userLogic = new Mock <IUserLogic>(); userLogic .Setup(x => x.FindByName("JBurton")) .Returns(user); userLogic .Setup(x => x.ChangePassword(user.Id, model.OldPassword, model.NewPassword)) .Returns(true) .Verifiable("should change password"); var controller = new AccountController(userLogic.Object, null, null) { ControllerContext = controllerContext.Object }; var result = controller.ChangePassword(model) as RedirectToRouteResult; //ASSERT userLogic.Verify(); Assert.NotNull(result); Assert.AreEqual("Index", result.RouteValues["Action"]); Assert.AreEqual("Home", result.RouteValues["Controller"]); }
public void ChangePassword() { // Arrange var securityAdapter = new Mock <ISecurityAdapter>(); var accountController = new AccountController(securityAdapter.Object); // Act ActionResult result = accountController.ChangePassword(); Assert.IsTrue(result is ViewResult); ViewResult viewResult = result as ViewResult; Assert.IsTrue(viewResult.Model is null); }
public async Task TestChangePassword2() { var account = new Account { OldPassword = "******", NewPassword = "******", ConfirmNewPassword = "******" }; var user = new RegisterUserViewModel { Account = account }; var controller = new AccountController(); var result = await controller.ChangePassword(user); Assert.IsInstanceOf(typeof(RedirectToRouteResult), result); }
public async Task Change_Password_Invalid_Coincidence() { UserManagerMock.Setup(m => m.GetUserAsync(It.IsAny <ClaimsPrincipal>())).ReturnsAsync(new IdentityUser()); UserManagerMock.Setup(m => m.CheckPasswordAsync(It.IsAny <IdentityUser>(), It.IsAny <string>())) .ReturnsAsync(true); var target = new AccountController(UserManagerMock.Object, SignInManagerMock.Object, PasswordValidatorMock.Object); var result = await target.ChangePassword(new PasswordChangeViewModel() { NewPassword = "******", OldPassword = "******" }) as ViewResult; Assert.NotNull(result); Assert.False(target.ModelState.IsValid); Assert.True(target.ModelState[""].Errors[0].ErrorMessage == "Пароли не совпадают"); }
public void ChangePassword_Post_ReturnsRedirectOnSuccess() { // Arrange AccountController controller = GetAccountController(); ChangePasswordModel model = new ChangePasswordModel() { OldPassword = "******", NewPassword = "******", ConfirmPassword = "******" }; // Act ActionResult result = controller.ChangePassword(model); // Assert Assert.IsInstanceOfType(result, typeof(RedirectToRouteResult)); RedirectToRouteResult redirectResult = (RedirectToRouteResult)result; Assert.AreEqual("ChangePasswordSuccess", redirectResult.RouteValues["action"]); }
public void ChangePassword_NullValue_Test() { var accountServiceMock = new Mock <IAccountService>(); var user = new UserToChangePassword(); accountServiceMock.Setup(x => x.ChangePassword(user)) .Throws <ArgumentNullException>(); var controller = new AccountController(accountServiceMock.Object); var actualResult = controller.ChangePassword(user); var badRequestResult = (BadRequestObjectResult)actualResult; var asJson = JsonConvert.SerializeObject(badRequestResult.Value); var deserialized = JsonConvert.DeserializeObject <Dictionary <string, object> >(asJson); Assert.IsTrue((bool)deserialized["Success"] == false); accountServiceMock.VerifyAll(); }
public async Task AccountController_ChangePassword_Fail_WrongPassword() { var email = "*****@*****.**"; var password = "******"; var accountService = new AccountServiceMock() { CheckAccountPasswordResult = false }; var authenticatorProvider = new AuthenticatorProviderMock() { Email = email }; var sut = new AccountController(accountService, authenticatorProvider); var result = await sut.ChangePassword("oldPassword", password); Assert.IsFalse(result, "result"); Assert.IsNull(accountService.ChangedAccountId, "accountService.ChangedEmail"); Assert.IsNull(accountService.ChangedPassword, "accountService.ChangedPassword"); }