]> WPIA git - gigi.git/blobdiff - tests/org/cacert/gigi/TestSeparateSessionScope.java
Move the "dbObject"s to their own package.
[gigi.git] / tests / org / cacert / gigi / TestSeparateSessionScope.java
index a28def7c5abbc8b6a1d66137b89e89f310e1da53..2da974ad3ad03b089555250bee01b44343d88437 100644 (file)
@@ -6,42 +6,45 @@ import java.io.IOException;
 import java.net.HttpURLConnection;
 import java.net.URL;
 import java.security.GeneralSecurityException;
+import java.security.KeyPair;
 import java.security.PrivateKey;
 import java.security.cert.X509Certificate;
 import java.sql.SQLException;
 
-import org.cacert.gigi.Certificate.CSRType;
+import org.cacert.gigi.dbObjects.Certificate;
+import org.cacert.gigi.dbObjects.CertificateProfile;
+import org.cacert.gigi.dbObjects.Certificate.CSRType;
 import org.cacert.gigi.testUtils.ManagedTest;
-import org.cacert.gigi.testUtils.PemKey;
 import org.junit.Test;
 
 public class TestSeparateSessionScope extends ManagedTest {
 
-       @Test
-       public void testSeparateScope() throws IOException, GeneralSecurityException, SQLException, InterruptedException {
-               String mail = "thisgo" + createUniqueName() + "@example.com";
-               int user = createAssuranceUser("test", "tugo", mail, TEST_PASSWORD);
-               String cookie = login(mail, TEST_PASSWORD);
-               String[] csr = generateCSR("/CN=felix@dogcraft.de");
-               Certificate c = new Certificate(user, "/CN=testmail@example.com", "sha256", csr[1], CSRType.CSR);
-               final PrivateKey pk = PemKey.parsePEMPrivateKey(csr[0]);
-               c.issue().waitFor(60000);
-               final X509Certificate ce = c.cert();
-               String scookie = login(pk, ce);
-
-               assertTrue(isLoggedin(cookie));
-               assertFalse(isLoggedin(scookie));
-
-               URL u = new URL("https://" + getServerName().replaceAll("^www", "secure") + SECURE_REFERENCE);
-               HttpURLConnection huc = (HttpURLConnection) u.openConnection();
-               authenticateClientCert(pk, ce, huc);
-               huc.setRequestProperty("Cookie", scookie);
-               assertEquals(200, huc.getResponseCode());
-
-               HttpURLConnection huc2 = (HttpURLConnection) u.openConnection();
-               authenticateClientCert(pk, ce, huc2);
-               huc2.setRequestProperty("Cookie", cookie);
-               assertEquals(302, huc2.getResponseCode());
-
-       }
+    @Test
+    public void testSeparateScope() throws IOException, GeneralSecurityException, SQLException, InterruptedException, GigiApiException {
+        String mail = "thisgo" + createUniqueName() + "@example.com";
+        int user = createAssuranceUser("test", "tugo", mail, TEST_PASSWORD);
+        String cookie = login(mail, TEST_PASSWORD);
+        KeyPair kp = generateKeypair();
+        String csr = generatePEMCSR(kp, "CN=felix@dogcraft.de");
+        Certificate c = new Certificate(user, "/CN=testmail@example.com", "sha256", csr, CSRType.CSR, CertificateProfile.getById(1));
+        final PrivateKey pk = kp.getPrivate();
+        c.issue(null, "2y").waitFor(60000);
+        final X509Certificate ce = c.cert();
+        String scookie = login(pk, ce);
+
+        assertTrue(isLoggedin(cookie));
+        assertFalse(isLoggedin(scookie));
+
+        URL u = new URL("https://" + getServerName().replaceAll("^www", "secure") + SECURE_REFERENCE);
+        HttpURLConnection huc = (HttpURLConnection) u.openConnection();
+        authenticateClientCert(pk, ce, huc);
+        huc.setRequestProperty("Cookie", scookie);
+        assertEquals(200, huc.getResponseCode());
+
+        HttpURLConnection huc2 = (HttpURLConnection) u.openConnection();
+        authenticateClientCert(pk, ce, huc2);
+        huc2.setRequestProperty("Cookie", cookie);
+        assertEquals(302, huc2.getResponseCode());
+
+    }
 }