1 package org.cacert.gigi.pages.account;
3 import static org.junit.Assert.*;
5 import java.io.IOException;
7 import java.util.Calendar;
8 import java.util.TimeZone;
10 import org.cacert.gigi.dbObjects.User;
11 import org.cacert.gigi.testUtils.ManagedTest;
12 import org.junit.Test;
14 public class TestMyDetailsEdit extends ManagedTest {
16 String email = createUniqueName() + "@e.de";
18 int id = createVerifiedUser("Kurti", "Hansel", email, TEST_PASSWORD);
20 String cookie = login(email, TEST_PASSWORD);
22 public TestMyDetailsEdit() throws IOException {}
25 public void testChangeFnameValid() throws IOException {
26 String newName = createUniqueName();
27 assertNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "fname=" + newName + "&lname=Hansel&mname=&suffix=&day=1&month=1&year=2000&processDetails", 0));
28 User u = User.getById(id);
29 assertEquals(newName, u.getName().getFname());
33 public void testChangeLnameValid() throws IOException {
34 String newName = createUniqueName();
35 assertNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "lname=" + newName + "&fname=Kurti&mname=&suffix=&day=1&month=1&year=2000&processDetails", 0));
36 User u = User.getById(id);
37 assertEquals(newName, u.getName().getLname());
41 public void testChangeMnameValid() throws IOException {
42 String newName = createUniqueName();
43 assertNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "mname=" + newName + "&fname=Kurti&lname=Hansel&suffix=&day=1&month=1&year=2000&processDetails", 0));
44 User u = User.getById(id);
45 assertEquals(newName, u.getName().getMname());
49 public void testChangeSuffixValid() throws IOException {
50 String newName = createUniqueName();
51 assertNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "mname=&fname=Kurti&lname=Hansel&suffix=" + newName + "&day=1&month=1&year=2000&processDetails", 0));
52 User u = User.getById(id);
53 assertEquals(newName, u.getName().getSuffix());
57 public void testUnsetSuffix() throws IOException {
58 String newName = createUniqueName();
59 assertNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "mname=&fname=Kurti&lname=Hansel&suffix=" + newName + "&day=1&month=1&year=2000&processDetails", 0));
61 User u = User.getById(id);
62 assertEquals(newName, u.getName().getSuffix());
63 assertNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "mname=&fname=Kurti&lname=Hansel&suffix=&day=1&month=1&year=2000&processDetails", 0));
66 assertEquals("", u.getName().getSuffix());
70 public void testUnsetFname() throws IOException {
71 assertNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "fname=&lname=Hansel&mname=&suffix=&day=1&month=1&year=2000&processDetails", 0));
72 User u = User.getById(id);
73 assertEquals("", u.getName().getFname());
78 public void testUnsetLname() throws IOException {
79 assertNotNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "lname=&fname=Kurti&mname=&suffix=&day=1&month=1&year=2000&processDetails", 0));
80 User u = User.getById(id);
81 assertEquals("Hansel", u.getName().getLname());
85 public void testUnsetMname() throws IOException {
86 String newName = createUniqueName();
87 assertNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "mname=" + newName + "&fname=Kurti&lname=Hansel&suffix=&day=1&month=1&year=2000&processDetails", 0));
88 User u = User.getById(id);
89 assertEquals(newName, u.getName().getMname());
90 assertNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "lname=Hansel&fname=Kurti&mname=&suffix=&day=1&month=1&year=2000&processDetails", 0));
93 assertEquals("", u.getName().getMname());
98 public void testChangeDOBValid() throws IOException {
99 assertNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "lname=Hansel&fname=Kurti&mname=&suffix=&day=1&month=2&year=2000&processDetails", 0));
100 User u = User.getById(id);
101 Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
102 cal.set(Calendar.YEAR, 2000);
103 cal.set(Calendar.DAY_OF_MONTH, Calendar.FEBRUARY);
104 cal.set(Calendar.MONTH, 1);
105 Date d = new Date(cal.getTimeInMillis());
106 assertEquals(d.toString(), u.getDoB().toSQLDate().toString());
110 public void testChangeDOBInvalid() throws IOException {
111 assertNotNull(executeBasicWebInteraction(cookie, MyDetails.PATH, "lname=Hansel&fname=Kurti&mname=&suffix=&day=1&month=1&year=test&processDetails", 0));