示例#1
0
        public void Cant_Change_PasswordQuestionAndAnswer_When_User_Is_Locked()
        {
            // Arrange
            User user = new User("username", password, passwordCoder);

            var newPasswordQuestion = "New password question";
            var newPasswordAnswer = "New password answer";

            user.ChangePasswordQuestionAndAnswer(fakePassword, newPasswordQuestion, newPasswordAnswer, passwordCoder);
            user.ChangePasswordQuestionAndAnswer(fakePassword, newPasswordQuestion, newPasswordAnswer, passwordCoder);

            // ovdje bi korisnik trebao biti zakljucan
            user.TryToLockoutUser(2);

            // Act
            var result = user.ChangePasswordQuestionAndAnswer(password, newPasswordQuestion, newPasswordAnswer, passwordCoder);

            // Assert
            Assert.IsFalse(result, "Change of PasswordQuestionAndAnswer was successful.");
            Assert.AreNotEqual(newPasswordQuestion, user.PasswordQuestion, "User has successfuly changed password question.");
            Assert.IsTrue(user.IsLockedOut, "User isn't lockedout.");
        }
示例#2
0
        public void Attempt_To_Change_PasswordQuestionAndAnswer_With_Wrong_Password_Must_Increment_Failiure_Count()
        {
            // Arrange
            User user = new User("username", password, passwordCoder);

            var failedPasswordAttemptCount = user.FailedPasswordAttemptCount;

            var newPasswordQuestion = "New password question";
            var newPasswordAnswer = "New password answer";

            // Act
            var result = user.ChangePasswordQuestionAndAnswer(fakePassword, newPasswordQuestion, newPasswordAnswer, passwordCoder);

            // Assert
            Assert.IsFalse(result, "Change of PasswordQuestionAndAnswer was successful.");
            Assert.AreNotEqual(newPasswordQuestion, user.PasswordQuestion, "User has successfuly changed password question.");
            Assert.IsTrue(failedPasswordAttemptCount < user.FailedPasswordAttemptCount, "Change with wrong password didn't rise failed password attempt count.");
        }
示例#3
0
        public void Can_Set_PasswordQuestion_In_ClearText()
        {
            // Arrange
            User user = new User("username", password, passwordCoder);

            string question = "Question for password";
            string answer = "Answer for password question";

            // Act
            user.ChangePasswordQuestionAndAnswer(password, question, answer, passwordCoder);

            // Assert
            Assert.AreEqual(question, user.PasswordQuestion, "PasswordQuestion isn't set in clear text.");
        }