1 package org.cacert.gigi;
3 import java.sql.SQLException;
4 import java.util.Locale;
6 import org.cacert.gigi.localisation.Language;
7 import org.cacert.gigi.testUtils.ManagedTest;
10 import static org.junit.Assert.*;
12 public class TestUser extends ManagedTest {
15 public void testStoreAndLoad() throws SQLException {
21 u.setPreferredLocale(Locale.ENGLISH);
22 long dob = System.currentTimeMillis();
23 dob -= dob % (1000 * 60 * 60 * 24);
24 u.setDob(new java.sql.Date(dob));
25 u.setEmail(createUniqueName() + "a@email.org");
28 User u2 = new User(id);
33 public void testWebStoreAndLoad() throws SQLException {
34 int id = createVerifiedUser("aä", "b", createUniqueName() + "a@email.org", TEST_PASSWORD);
36 User u = new User(id);
37 assertEquals("aä", u.getFname());
38 assertEquals("b", u.getLname());
39 assertEquals("", u.getMname());
43 public void testAssurerUtilMethods() throws SQLException {
44 int id = createAssuranceUser("aä", "b", createUniqueName() + "a@email.org", TEST_PASSWORD);
46 User u = new User(id);
47 assertTrue(u.canAssure());
48 int assurancePoints = u.getAssurancePoints();
49 int expPoints = u.getExperiencePoints();
50 assertEquals(100, assurancePoints);
51 assertEquals(2, expPoints);
52 assertTrue(u.hasPassedCATS());
53 assertEquals(10, u.getMaxAssurePoints());
55 assertEquals("aä", u.getFname());
56 assertEquals("b", u.getLname());
57 assertEquals("", u.getMname());
61 public void testMatcherMethods() throws SQLException, GigiApiException {
62 String uq = createUniqueName();
63 int id = createVerifiedUser("aä", "b", uq + "a@email.org", TEST_PASSWORD);
65 User u = new User(id);
66 new EmailAddress(uq + "b@email.org", u).insert(Language.getInstance(Locale.ENGLISH));
67 new EmailAddress(uq + "c@email.org", u).insert(Language.getInstance(Locale.ENGLISH));
68 new Domain(u, uq + "a.testdomain.org").insert();
69 new Domain(u, uq + "b.testdomain.org").insert();
70 new Domain(u, uq + "c.testdomain.org").insert();
71 assertEquals(3, u.getEmails().length);
72 assertEquals(3, u.getDomains().length);
73 assertTrue(u.isValidDomain(uq + "a.testdomain.org"));
74 assertTrue(u.isValidDomain(uq + "b.testdomain.org"));
75 assertTrue(u.isValidDomain(uq + "c.testdomain.org"));
76 assertTrue(u.isValidDomain("a." + uq + "a.testdomain.org"));
77 assertTrue(u.isValidDomain("*." + uq + "a.testdomain.org"));
78 assertFalse(u.isValidDomain("a" + uq + "a.testdomain.org"));
79 assertFalse(u.isValidDomain("b" + uq + "a.testdomain.org"));
81 assertTrue(u.isValidEmail(uq + "a@email.org"));
82 assertTrue(u.isValidEmail(uq + "b@email.org"));
83 assertFalse(u.isValidEmail(uq + "b+6@email.org"));
84 assertFalse(u.isValidEmail(uq + "b*@email.org"));
86 assertTrue(u.isValidName("aä b"));
87 assertFalse(u.isValidName("aä c"));
88 assertFalse(u.isValidName("aä d b"));