X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=tests%2Forg%2Fcacert%2Fgigi%2FtestUtils%2FPingTest.java;h=31f45c99b8143c3e0d40e66ffccc70568a186d0e;hb=ed2d14a0fb2a1ce8df9537c0e8895bb2f783adfc;hp=50d5d7fc14696a97692c39e8fb85b35ec8feb9ed;hpb=280d6da278bcb19eb962fbc87403b88b1dc3e661;p=gigi.git diff --git a/tests/org/cacert/gigi/testUtils/PingTest.java b/tests/org/cacert/gigi/testUtils/PingTest.java index 50d5d7fc..31f45c99 100644 --- a/tests/org/cacert/gigi/testUtils/PingTest.java +++ b/tests/org/cacert/gigi/testUtils/PingTest.java @@ -12,14 +12,19 @@ import java.sql.SQLException; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.cacert.gigi.database.DatabaseConnection; import org.cacert.gigi.database.GigiPreparedStatement; import org.cacert.gigi.database.GigiResultSet; import org.cacert.gigi.pages.account.domain.DomainOverview; import org.junit.After; +/** + * Base class for test suites that check extensively if the domain-ping + * functionality wroks as expected. + */ public abstract class PingTest extends ClientTest { + protected String csrf; + protected static void updateService(String token, String value, String action) throws IOException, MalformedURLException { String manage = getTestProps().getProperty("domain.manage"); assumeNotNull(manage); @@ -28,15 +33,16 @@ public abstract class PingTest extends ClientTest { } protected void waitForPings(int count) throws SQLException, InterruptedException { - GigiPreparedStatement ps = DatabaseConnection.getInstance().prepare("SELECT COUNT(*) FROM domainPinglog"); - long start = System.currentTimeMillis(); - while (System.currentTimeMillis() - start < 10000) { - GigiResultSet rs = ps.executeQuery(); - rs.next(); - if (rs.getInt(1) >= count) { - break; + try (GigiPreparedStatement ps = new GigiPreparedStatement("SELECT COUNT(*) FROM `domainPinglog`")) { + long start = System.currentTimeMillis(); + while (System.currentTimeMillis() - start < 10000) { + GigiResultSet rs = ps.executeQuery(); + rs.next(); + if (rs.getInt(1) >= count) { + break; + } + Thread.sleep(200); } - Thread.sleep(200); } } @@ -44,8 +50,11 @@ public abstract class PingTest extends ClientTest { URLConnection openConnection = u.openConnection(); openConnection.setRequestProperty("Cookie", cookie); openConnection.setDoOutput(true); - openConnection.getOutputStream().write(content.getBytes()); + openConnection.getOutputStream().write(content.getBytes("UTF-8")); openConnection.getHeaderField("Location"); + if (((HttpURLConnection) openConnection).getResponseCode() != 302) { + throw new Error(IOUtils.readURL(openConnection)); + } String newcontent = IOUtils.readURL(cookie(u.openConnection(), cookie)); Pattern dlink = Pattern.compile(DomainOverview.PATH + "([0-9]+)'>");