]> WPIA git - gigi.git/blobdiff - tests/org/cacert/gigi/testUtils/ManagedTest.java
Merge "add: support configuring SetUID behavior"
[gigi.git] / tests / org / cacert / gigi / testUtils / ManagedTest.java
index 22da1eab4a5ef9851d3187331cbabaff09608cbf..da55f6848f450afac81837d00bc4cd2fc95097bc 100644 (file)
@@ -74,7 +74,11 @@ public class ManagedTest extends ConfiguredTest {
     }
 
     public static String getServerName() {
-        return url;
+        return url.replaceFirst(":443$", "");
+    }
+
+    public static String getSecureServerName() {
+        return getServerName().replaceAll("^www\\.", "secure.");
     }
 
     static {
@@ -234,6 +238,9 @@ public class ManagedTest extends ConfiguredTest {
         uc.addRequestProperty("Cookie", headerField);
         uc.setDoOutput(true);
         uc.getOutputStream().write((param + "&csrf=" + csrf).getBytes("UTF-8"));
+        if (uc.getResponseCode() == 302) {
+            return "";
+        }
         String d = IOUtils.readURL(uc);
         return d;
     }
@@ -346,15 +353,18 @@ public class ManagedTest extends ConfiguredTest {
         if (headerField == null) {
             return "";
         }
+        if (huc.getResponseCode() != 302) {
+            fail(fetchStartErrorMessage(IOUtils.readURL(huc)));
+        }
         return stripCookie(headerField);
     }
 
     public static String login(final PrivateKey pk, final X509Certificate ce) throws NoSuchAlgorithmException, KeyManagementException, IOException, MalformedURLException {
 
-        HttpURLConnection connection = (HttpURLConnection) new URL("https://" + getServerName().replaceFirst("^www.", "secure.") + "/login").openConnection();
+        HttpURLConnection connection = (HttpURLConnection) new URL("https://" + getSecureServerName() + "/login").openConnection();
         authenticateClientCert(pk, ce, connection);
         if (connection.getResponseCode() == 302) {
-            assertEquals("https://" + getServerName().replaceFirst("^www.", "secure.").replaceFirst(":443$", "") + "/", connection.getHeaderField("Location").replaceFirst(":443$", ""));
+            assertEquals("https://" + getSecureServerName() + "/", connection.getHeaderField("Location").replaceFirst(":443$", ""));
             return stripCookie(connection.getHeaderField("Set-Cookie"));
         } else {
             return null;
@@ -437,7 +447,10 @@ public class ManagedTest extends ConfiguredTest {
     }
 
     public static String executeBasicWebInteraction(String cookie, String path, String query, int formIndex) throws IOException, MalformedURLException, UnsupportedEncodingException {
-        URLConnection uc = post(cookie, path, query, formIndex);
+        HttpURLConnection uc = post(cookie, path, query, formIndex);
+        if (uc.getResponseCode() == 302) {
+            return null;
+        }
         String error = fetchStartErrorMessage(IOUtils.readURL(uc));
         return error;
     }
@@ -492,7 +505,7 @@ public class ManagedTest extends ConfiguredTest {
         int i = createVerifiedUser("fn", "ln", createUniqueName() + "@email.com", TEST_PASSWORD);
         try (GigiPreparedStatement ps = new GigiPreparedStatement("INSERT INTO `user_groups` SET `user`=?, `permission`=?::`userGroup`, `grantedby`=?")) {
             ps.setInt(1, i);
-            ps.setString(2, Group.SUPPORTER.getDatabaseName());
+            ps.setString(2, Group.SUPPORTER.getDBName());
             ps.setInt(3, i);
             ps.execute();
         }