X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=tests%2Forg%2Fcacert%2Fgigi%2Futil%2FTestPasswordStrengthChecker.java;h=254df05a70d5d612e6b755faf15aa26c2e7dea61;hb=d7be034f96e06985f57d86d2779c434276b5bd4d;hp=91a918c465c19d5f25734562f098430f579803ca;hpb=28f6b558d8116f8cbb17390a83235976b50903b0;p=gigi.git diff --git a/tests/org/cacert/gigi/util/TestPasswordStrengthChecker.java b/tests/org/cacert/gigi/util/TestPasswordStrengthChecker.java index 91a918c4..254df05a 100644 --- a/tests/org/cacert/gigi/util/TestPasswordStrengthChecker.java +++ b/tests/org/cacert/gigi/util/TestPasswordStrengthChecker.java @@ -1,64 +1,74 @@ package org.cacert.gigi.util; -import org.cacert.gigi.User; -import org.junit.Test; import static org.junit.Assert.*; +import org.cacert.gigi.dbObjects.Name; +import org.junit.Test; + public class TestPasswordStrengthChecker { - User u; - public TestPasswordStrengthChecker() { - u = new User(); - u.setFname("fname"); - u.setLname("lname"); - u.setMname("mname"); - u.setEmail("email"); - u.setSuffix("suffix"); - } - @Test - public void testPasswordLength() { - assertEquals(1, PasswordStrengthChecker.checkpw("01234", u)); - assertEquals(2, PasswordStrengthChecker.checkpw("0123456789012345", u)); - assertEquals(3, - PasswordStrengthChecker.checkpw("012345678901234567890", u)); - assertEquals(4, PasswordStrengthChecker.checkpw( - "01234567890123456789012345", u)); - assertEquals(5, PasswordStrengthChecker.checkpw( - "0123456789012345678901234567890", u)); - } - @Test - public void testPasswordCharTypes() { - assertEquals(1, PasswordStrengthChecker.checkpw("0", u)); - assertEquals(2, PasswordStrengthChecker.checkpw("0a", u)); - assertEquals(2, PasswordStrengthChecker.checkpw("0az", u)); - assertEquals(3, PasswordStrengthChecker.checkpw("0azZ", u)); - assertEquals(4, PasswordStrengthChecker.checkpw("0a zZ", u)); - assertEquals(5, PasswordStrengthChecker.checkpw("0a. zZ", u)); - - assertEquals(1, PasswordStrengthChecker.checkpw(".", u)); - assertEquals(1, PasswordStrengthChecker.checkpw(" ", u)); - assertEquals(1, PasswordStrengthChecker.checkpw("b", u)); - assertEquals(1, PasswordStrengthChecker.checkpw("Z", u)); - - assertEquals(2, PasswordStrengthChecker.checkpw("0.", u)); - assertEquals(2, PasswordStrengthChecker.checkpw("0 ", u)); - assertEquals(2, PasswordStrengthChecker.checkpw("0a", u)); - assertEquals(2, PasswordStrengthChecker.checkpw("0Z", u)); - - assertEquals(2, PasswordStrengthChecker.checkpw(" .", u)); - assertEquals(2, PasswordStrengthChecker.checkpw(" a", u)); - assertEquals(2, PasswordStrengthChecker.checkpw(" Z", u)); - - } - @Test - public void testPasswordContains() { - assertEquals(-1, PasswordStrengthChecker.checkpw("fnamea", u)); - assertEquals(-5, PasswordStrengthChecker.checkpw("na", u)); - assertEquals(0, PasswordStrengthChecker.checkpw("1lname", u)); - assertEquals(0, PasswordStrengthChecker.checkpw("1email", u)); - assertEquals(-1, PasswordStrengthChecker.checkpw("mai", u)); - assertEquals(-1, PasswordStrengthChecker.checkpw("suff", u)); - assertEquals(0, PasswordStrengthChecker.checkpw("1suffix", u)); - - } + + Name n = new Name("fname", "lname", "mname", "suffix"); + + String e = "email"; + + public TestPasswordStrengthChecker() {} + + private int check(String pw) { + return PasswordStrengthChecker.checkpw(pw, n, e); + } + + @Test + public void testPasswordLength() { + assertEquals(1, check("01234")); + assertEquals(2, check("0123456789012345")); + assertEquals(3, check("012345678901234567890")); + assertEquals(4, check("01234567890123456789012345")); + assertEquals(5, check("0123456789012345678901234567890")); + } + + @Test + public void testPasswordNonASCII() { + assertEquals(2, check("0ä")); + assertEquals(3, check("0aä")); + assertEquals(3, check("0azä")); + assertEquals(3, check("0az.ä")); + } + + @Test + public void testPasswordCharTypes() { + assertEquals(1, check("0")); + assertEquals(2, check("0a")); + assertEquals(2, check("0az")); + assertEquals(3, check("0azZ")); + assertEquals(4, check("0a zZ")); + assertEquals(5, check("0a. zZ")); + + assertEquals(1, check(".")); + assertEquals(1, check(" ")); + assertEquals(1, check("b")); + assertEquals(1, check("Z")); + + assertEquals(2, check("0.")); + assertEquals(2, check("0 ")); + assertEquals(2, check("0a")); + assertEquals(2, check("0Z")); + + assertEquals(2, check(" .")); + assertEquals(2, check(" a")); + assertEquals(2, check(" Z")); + + } + + @Test + public void testPasswordContains() { + assertEquals( -1, check("fnamea")); + assertEquals( -5, check("na")); + assertEquals(0, check("1lname")); + assertEquals(0, check("1email")); + assertEquals( -1, check("mai")); + assertEquals( -1, check("suff")); + assertEquals(0, check("1suffix")); + + } }