]> WPIA git - gigi.git/blob - tests/org/cacert/gigi/TestObjectCache.java
UPD: Stricter name part handling
[gigi.git] / tests / org / cacert / gigi / TestObjectCache.java
1 package org.cacert.gigi;
2
3 import static org.hamcrest.CoreMatchers.*;
4 import static org.junit.Assert.*;
5
6 import java.sql.Date;
7 import java.sql.SQLException;
8 import java.util.Calendar;
9 import java.util.Locale;
10
11 import org.cacert.gigi.dbObjects.Domain;
12 import org.cacert.gigi.dbObjects.EmailAddress;
13 import org.cacert.gigi.dbObjects.Name;
14 import org.cacert.gigi.dbObjects.User;
15 import org.cacert.gigi.localisation.Language;
16 import org.cacert.gigi.testUtils.ManagedTest;
17 import org.junit.Test;
18
19 public class TestObjectCache extends ManagedTest {
20
21     int uid = createVerifiedUser("fname", "lname", createUniqueName() + "@example.com", TEST_PASSWORD);
22
23     @Test
24     public void testUserCache() throws SQLException {
25         assertThat(User.getById(uid), is(sameInstance(User.getById(uid))));
26
27         User u = new User();
28         u.setName(new Name("fname", "lname", "mname", "suffix"));
29         u.setEmail(createUniqueName() + "@example.org");
30         Calendar c = Calendar.getInstance();
31         c.set(1950, 1, 1);
32         u.setDoB(new Date(c.getTime().getTime()));
33         u.setPreferredLocale(Locale.ENGLISH);
34         u.insert(TEST_PASSWORD);
35
36         assertThat(u, is(sameInstance(User.getById(u.getId()))));
37         assertThat(User.getById(u.getId()), is(sameInstance(User.getById(u.getId()))));
38
39     }
40
41     @Test
42     public void testDomainCache() throws GigiApiException {
43         Domain d = new Domain(User.getById(uid), "example.org");
44         d.insert();
45
46         assertThat(d, is(sameInstance(Domain.getById(d.getId()))));
47         assertThat(Domain.getById(d.getId()), is(sameInstance(Domain.getById(d.getId()))));
48     }
49
50     @Test
51     public void testEmailCache() throws GigiApiException {
52         EmailAddress em = new EmailAddress(User.getById(uid), createUniqueName() + "@example.org");
53         em.insert(Language.getInstance(Locale.ENGLISH));
54
55         assertThat(em, is(sameInstance(EmailAddress.getById(em.getId()))));
56         assertThat(EmailAddress.getById(em.getId()), is(sameInstance(EmailAddress.getById(em.getId()))));
57     }
58 }