1 package org.cacert.gigi;
3 import static org.hamcrest.CoreMatchers.*;
4 import static org.junit.Assert.*;
6 import java.io.IOException;
7 import java.net.URLConnection;
9 import org.cacert.gigi.testUtils.IOUtils;
10 import org.cacert.gigi.testUtils.ManagedTest;
11 import org.junit.Test;
13 public class LoginTest extends ManagedTest {
16 public void testLoginUnverified() throws IOException {
17 String email = createUniqueName() + "@testmail.org";
18 registerUser("an", "bn", email, TEST_PASSWORD);
19 getMailReciever().receive();
20 assertFalse(isLoggedin(login(email, TEST_PASSWORD)));
24 public void testLoginVerified() throws IOException {
25 String email = createUniqueName() + "@testmail.org";
26 createVerifiedUser("an", "bn", email, TEST_PASSWORD);
27 assertTrue(isLoggedin(login(email, TEST_PASSWORD)));
31 public void testLoginWrongPassword() throws IOException {
32 String email = createUniqueName() + "@testmail.org";
33 createVerifiedUser("an", "bn", email, TEST_PASSWORD);
34 assertFalse(isLoggedin(login(email, TEST_PASSWORD + "b")));
38 public void testLogoutVerified() throws IOException {
39 String email = createUniqueName() + "@testmail.org";
40 createVerifiedUser("an", "bn", email, TEST_PASSWORD);
41 String cookie = login(email, TEST_PASSWORD);
42 assertTrue(isLoggedin(cookie));
44 assertFalse(isLoggedin(cookie));
47 private void logout(String cookie) throws IOException {
48 get(cookie, "/logout").getHeaderField("Location");
52 public void testLoginMethodDisplay() throws IOException {
53 String email = createUniqueName() + "@testmail.org";
54 createVerifiedUser("an", "bn", email, TEST_PASSWORD);
55 String l = login(email, TEST_PASSWORD);
56 URLConnection c = get(l, "");
57 String readURL = IOUtils.readURL(c);
58 assertThat(readURL, containsString("Password"));