X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=tests%2Forg%2Fcacert%2Fgigi%2FTestUser.java;h=a3dfb777b3c5b2c336b41f20ac754579355ee072;hp=93deebaa4fe4af245148cf3a133d98e0d02c49a0;hb=d7be034f96e06985f57d86d2779c434276b5bd4d;hpb=ec24cf6925bb3729a644580ad4a9375d05883c62 diff --git a/tests/org/cacert/gigi/TestUser.java b/tests/org/cacert/gigi/TestUser.java index 93deebaa..a3dfb777 100644 --- a/tests/org/cacert/gigi/TestUser.java +++ b/tests/org/cacert/gigi/TestUser.java @@ -2,33 +2,26 @@ 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; import org.cacert.gigi.dbObjects.Assurance; import org.cacert.gigi.dbObjects.Domain; import org.cacert.gigi.dbObjects.EmailAddress; +import org.cacert.gigi.dbObjects.Name; import org.cacert.gigi.dbObjects.User; -import org.cacert.gigi.localisation.Language; import org.cacert.gigi.testUtils.ManagedTest; +import org.cacert.gigi.util.DayDate; import org.junit.Test; public class TestUser extends ManagedTest { @Test - public void testStoreAndLoad() throws SQLException { - User u = new User(); - u.setFName("user"); - u.setLName("last"); - u.setMName(""); - u.setSuffix(""); - u.setPreferredLocale(Locale.ENGLISH); + public void testStoreAndLoad() throws SQLException, GigiApiException { long dob = System.currentTimeMillis(); dob -= dob % (1000 * 60 * 60 * 24); - u.setDoB(new java.sql.Date(dob)); - u.setEmail(createUniqueName() + "a@email.org"); - u.insert("password"); + 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()); @@ -40,10 +33,11 @@ public class TestUser extends ManagedTest { public void testWebStoreAndLoad() throws SQLException { int id = createVerifiedUser("aä", "b", createUniqueName() + "a@email.org", TEST_PASSWORD); - User u = User.getById(id); - assertEquals("aä", u.getFName()); - assertEquals("b", u.getLName()); - assertEquals("", u.getMName()); + Name u = User.getById(id).getName(); + + assertEquals("aä", u.getFname()); + assertEquals("b", u.getLname()); + assertEquals("", u.getMname()); } @Test @@ -58,23 +52,25 @@ public class TestUser extends ManagedTest { assertEquals(2, expPoints); assertTrue(u.hasPassedCATS()); assertEquals(10, u.getMaxAssurePoints()); - - assertEquals("aä", u.getFName()); - assertEquals("b", u.getLName()); - assertEquals("", u.getMName()); + Name name = u.getName(); + assertEquals("aä", name.getFname()); + assertEquals("b", name.getLname()); + assertEquals("", name.getMname()); } @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").insert(Language.getInstance(Locale.ENGLISH)); - new EmailAddress(u, uq + "c@email.org").insert(Language.getInstance(Locale.ENGLISH)); - new Domain(u, uq + "a-testdomain.org").insert(); - new Domain(u, uq + "b-testdomain.org").insert(); - new Domain(u, uq + "c-testdomain.org").insert(); + new EmailAddress(u, uq + "b@email.org", Locale.ENGLISH); + getMailReciever().receive().verify(); + new EmailAddress(u, uq + "c@email.org", Locale.ENGLISH); + 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")); @@ -89,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")); @@ -97,22 +94,10 @@ public class TestUser extends ManagedTest { } @Test - public void testDoubleInsert() { - User u = new User(); - u.setFName("f"); - u.setLName("l"); - u.setMName("m"); - u.setSuffix("s"); - u.setEmail(createUniqueName() + "@example.org"); - u.setDoB(new Date(System.currentTimeMillis() + 1000 * 60 * 60 * 24 * 365)); - u.setPreferredLocale(Locale.ENGLISH); - u.insert(TEST_PASSWORD); - try { - u.insert(TEST_PASSWORD); - fail("Error expected"); - } catch (Error e) { - // expected - } + public void testDoubleInsert() throws GigiApiException { + 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(); @@ -135,4 +120,19 @@ public class TestUser extends ManagedTest { assertSame(u, emailUser); } + @Test + public void testNoCats() { + String email = createUniqueName() + "a@email.org"; + createVerifiedUser("aä", "b", email, TEST_PASSWORD); + User emailUser = User.getByEmail(email); + assertFalse(emailUser.hasPassedCATS()); + } + + @Test + public void testGetByMailFail() { + String email = createUniqueName() + "d@email.org"; + User emailUser = User.getByEmail(email); + assertNull(emailUser); + } + }