Ejemplo n.º 1
0
        public void If_Time_Of_Tracking_Bad_Attempts_Is_Passed_Counters_Must_Be_Reset()
        {
            // Arrange
            User user = new User("username", password, passwordCoder);

            user.IncrementFailedPasswordAttemptCount();
            user.IncrementFailedPasswordAttemptCount();
            user.IncrementFailedPasswordAnswerAttemptCount();

            PropertyInfo passwordAnswerProperty = user.GetType().GetProperty("FailedPasswordAnswerAttemptWindowStart",
                BindingFlags.Public | BindingFlags.Instance);

            passwordAnswerProperty.SetValue(user, DateTime.Now.AddMinutes(-30), null);

            PropertyInfo passwordProperty = user.GetType().GetProperty("FailedPasswordAttemptWindowStart",
                BindingFlags.Public | BindingFlags.Instance);
            passwordProperty.SetValue(user, DateTime.Now.AddMinutes(-30), null);

            // Act
            user.CheckTrackingFailedAttempts(1);

            // Assert
            Assert.AreEqual(0, user.FailedPasswordAnswerAttemptCount, "FailedPasswordAnswerAttempt counter isn't reset.");
            Assert.AreEqual(DateTime.MinValue.ToLocalTime(), user.FailedPasswordAnswerAttemptWindowStart, "FailedPasswordAnswerAttemptWindowStart isn't reset to min datetime.");
            Assert.AreEqual(0, user.FailedPasswordAttemptCount, "FailedPasswordAttempt counter isn't reset.");
            Assert.AreEqual(DateTime.MinValue.ToLocalTime(), user.FailedPasswordAttemptWindowStart, "FailedPasswordAttemptWindowStart isn't reset to min datetime.");
        }
Ejemplo n.º 2
0
        public void If_Time_Of_Tracking_Bad_Attempts_Is_Not_Passed_Counters_Must_Be_Reset()
        {
            // Arrange
            User user = new User("username", password, passwordCoder);

            user.IncrementFailedPasswordAttemptCount();
            user.IncrementFailedPasswordAttemptCount();

            // Act
            user.CheckTrackingFailedAttempts(30);

            // Assert
            Assert.AreEqual(0, user.FailedPasswordAnswerAttemptCount, "FailedPasswordAnswerAttempt counter is reset.");
            Assert.AreEqual(2, user.FailedPasswordAttemptCount, "FailedPasswordAttempt counter is reset.");
        }