]> WPIA git - gigi.git/blobdiff - tests/org/cacert/gigi/TestUser.java
Enforce Date-of-births to be day-only.
[gigi.git] / tests / org / cacert / gigi / TestUser.java
index 9fd1fe7a331d3e63d0a5c50571be67af7a5c8191..a3dfb777b3c5b2c336b41f20ac754579355ee072 100644 (file)
@@ -2,7 +2,7 @@ package org.cacert.gigi;
 
 import static org.junit.Assert.*;
 
-import java.sql.Date;
+import java.io.IOException;
 import java.sql.SQLException;
 import java.util.Locale;
 
@@ -12,6 +12,7 @@ import org.cacert.gigi.dbObjects.EmailAddress;
 import org.cacert.gigi.dbObjects.Name;
 import org.cacert.gigi.dbObjects.User;
 import org.cacert.gigi.testUtils.ManagedTest;
+import org.cacert.gigi.util.DayDate;
 import org.junit.Test;
 
 public class TestUser extends ManagedTest {
@@ -20,7 +21,7 @@ public class TestUser extends ManagedTest {
     public void testStoreAndLoad() throws SQLException, GigiApiException {
         long dob = System.currentTimeMillis();
         dob -= dob % (1000 * 60 * 60 * 24);
-        User u = new User(createUniqueName() + "a@email.org", "password", new Name("user", "last", "", ""), new java.sql.Date(dob), Locale.ENGLISH);
+        User u = new User(createUniqueName() + "a@email.org", "password", new Name("user", "last", "", ""), new DayDate(dob), Locale.ENGLISH);
         int id = u.getId();
         User u2 = User.getById(id);
         assertEquals(u.getName(), u2.getName());
@@ -58,16 +59,18 @@ public class TestUser extends ManagedTest {
     }
 
     @Test
-    public void testMatcherMethods() throws SQLException, GigiApiException {
+    public void testMatcherMethods() throws SQLException, GigiApiException, IOException {
         String uq = createUniqueName();
         int id = createVerifiedUser("aä", "b", uq + "a@email.org", TEST_PASSWORD);
 
         User u = User.getById(id);
         new EmailAddress(u, uq + "b@email.org", Locale.ENGLISH);
+        getMailReciever().receive().verify();
         new EmailAddress(u, uq + "c@email.org", Locale.ENGLISH);
-        new Domain(u, uq + "a-testdomain.org");
-        new Domain(u, uq + "b-testdomain.org");
-        new Domain(u, uq + "c-testdomain.org");
+        getMailReciever().receive();// no-verify
+        verify(new Domain(u, u, uq + "a-testdomain.org"));
+        verify(new Domain(u, u, uq + "b-testdomain.org"));
+        verify(new Domain(u, u, uq + "c-testdomain.org"));
         assertEquals(3, u.getEmails().length);
         assertEquals(3, u.getDomains().length);
         assertTrue(u.isValidDomain(uq + "a-testdomain.org"));
@@ -82,6 +85,7 @@ public class TestUser extends ManagedTest {
         assertTrue(u.isValidEmail(uq + "b@email.org"));
         assertFalse(u.isValidEmail(uq + "b+6@email.org"));
         assertFalse(u.isValidEmail(uq + "b*@email.org"));
+        assertFalse(u.isValidEmail(uq + "c@email.org"));
 
         assertTrue(u.isValidName("aä b"));
         assertFalse(u.isValidName("aä c"));
@@ -91,7 +95,9 @@ public class TestUser extends ManagedTest {
 
     @Test
     public void testDoubleInsert() throws GigiApiException {
-        User u = new User(createUniqueName() + "@example.org", TEST_PASSWORD, new Name("f", "k", "m", "s"), new Date(System.currentTimeMillis() + 1000 * 60 * 60 * 24 * 365), Locale.ENGLISH);
+        long d = System.currentTimeMillis();
+        d -= d % DayDate.MILLI_DAY;
+        User u = new User(createUniqueName() + "@example.org", TEST_PASSWORD, new Name("f", "k", "m", "s"), new DayDate(d + 1000L * 60 * 60 * 24 * 365), Locale.ENGLISH);
         Assurance[] ma = u.getMadeAssurances();
         Assurance[] ma2 = u.getMadeAssurances();
         Assurance[] ra = u.getReceivedAssurances();
@@ -117,7 +123,7 @@ public class TestUser extends ManagedTest {
     @Test
     public void testNoCats() {
         String email = createUniqueName() + "a@email.org";
-        int id = createVerifiedUser("aä", "b", email, TEST_PASSWORD);
+        createVerifiedUser("aä", "b", email, TEST_PASSWORD);
         User emailUser = User.getByEmail(email);
         assertFalse(emailUser.hasPassedCATS());
     }