1 package org.cacert.gigi;
3 import static org.hamcrest.CoreMatchers.*;
4 import static org.junit.Assert.*;
6 import java.sql.SQLException;
7 import java.util.Calendar;
8 import java.util.Locale;
10 import org.cacert.gigi.dbObjects.Domain;
11 import org.cacert.gigi.dbObjects.EmailAddress;
12 import org.cacert.gigi.dbObjects.Name;
13 import org.cacert.gigi.dbObjects.User;
14 import org.cacert.gigi.testUtils.ManagedTest;
15 import org.cacert.gigi.util.DayDate;
16 import org.junit.Test;
18 public class TestObjectCache extends ManagedTest {
20 int uid = createVerifiedUser("fname", "lname", createUniqueName() + "@example.com", TEST_PASSWORD);
23 public void testUserCache() throws SQLException, GigiApiException {
24 assertThat(User.getById(uid), is(sameInstance(User.getById(uid))));
26 Calendar c = Calendar.getInstance();
27 c.set(1950, 1, 1, 0, 0, 0);
28 c.set(Calendar.MILLISECOND, 0);
29 User u = new User(createUniqueName() + "@example.org", TEST_PASSWORD, new Name("fname", "lname", "mname", "suffix"), new DayDate(c.getTime().getTime()), Locale.ENGLISH);
31 assertThat(u, is(sameInstance(User.getById(u.getId()))));
32 assertThat(User.getById(u.getId()), is(sameInstance(User.getById(u.getId()))));
37 public void testDomainCache() throws GigiApiException {
38 User u = User.getById(uid);
39 Domain d = new Domain(u, u, "example.org");
41 assertThat(d, is(sameInstance(Domain.getById(d.getId()))));
42 assertThat(Domain.getById(d.getId()), is(sameInstance(Domain.getById(d.getId()))));
46 public void testEmailCache() throws GigiApiException {
47 EmailAddress em = new EmailAddress(User.getById(uid), createUniqueName() + "@example.org", Locale.ENGLISH);
49 assertThat(em, is(sameInstance(EmailAddress.getById(em.getId()))));
50 assertThat(EmailAddress.getById(em.getId()), is(sameInstance(EmailAddress.getById(em.getId()))));