]> WPIA git - gigi.git/commitdiff
Test the logout functionality.
authorFelix Dörre <felix@dogcraft.de>
Wed, 27 Aug 2014 00:59:51 +0000 (02:59 +0200)
committerFelix Dörre <felix@dogcraft.de>
Wed, 27 Aug 2014 00:59:51 +0000 (02:59 +0200)
tests/org/cacert/gigi/LoginTest.java

index 940664fa79052cf1ea60d055b0d8dfef196cf0f7..bb4e4a8ea7f7818dc885889841e55b7c1737e7a2 100644 (file)
@@ -1,7 +1,10 @@
 package org.cacert.gigi;
 
 import java.io.IOException;
+import java.net.URL;
+
 import static org.junit.Assert.*;
+
 import org.cacert.gigi.testUtils.ManagedTest;
 import org.junit.Test;
 
@@ -9,8 +12,7 @@ public class LoginTest extends ManagedTest {
 
     @Test
     public void testLoginUnverified() throws IOException {
-        long uniq = System.currentTimeMillis();
-        String email = "system" + uniq + "@testmail.org";
+        String email = createUniqueName() + "@testmail.org";
         registerUser("an", "bn", email, TEST_PASSWORD);
         waitForMail();
         assertFalse(isLoggedin(login(email, TEST_PASSWORD)));
@@ -18,10 +20,23 @@ public class LoginTest extends ManagedTest {
 
     @Test
     public void testLoginVerified() throws IOException {
-        long uniq = System.currentTimeMillis();
-        String email = "system2" + uniq + "@testmail.org";
+        String email = createUniqueName() + "@testmail.org";
         createVerifiedUser("an", "bn", email, TEST_PASSWORD);
         assertTrue(isLoggedin(login(email, TEST_PASSWORD)));
     }
 
+    @Test
+    public void testLogoutVerified() throws IOException {
+        String email = createUniqueName() + "@testmail.org";
+        createVerifiedUser("an", "bn", email, TEST_PASSWORD);
+        String cookie = login(email, TEST_PASSWORD);
+        assertTrue(isLoggedin(cookie));
+        logout(cookie);
+        assertFalse(isLoggedin(cookie));
+    }
+
+    private void logout(String cookie) throws IOException {
+        cookie(new URL("https://" + getServerName() + "/logout").openConnection(), cookie).getHeaderField("Location");
+    }
+
 }