e.printStackTrace();
}
System.out.println(" in " + (System.currentTimeMillis() - ms) + " ms");
- String type = testProps.getProperty("type");
+ clearCaches();
+ }
+
+ public static void clearCaches() throws IOException {
ObjectCache.clearAllCaches();
- if (type.equals("local")) {
- URL u = new URL("https://" + getServerName() + "/manage");
- u.openConnection().getHeaderField("Location");
- }
+ String type = testProps.getProperty("type");
+ URL u = new URL("https://" + getServerName() + "/manage");
+ u.openConnection().getHeaderField("Location");
}
private static Properties generateMainProps() {
Properties mainProps = new Properties();
+ mainProps.setProperty("testrunner", "true");
mainProps.setProperty("host", "127.0.0.1");
mainProps.setProperty("name.secure", testProps.getProperty("name.secure"));
mainProps.setProperty("name.www", testProps.getProperty("name.www"));
public static String login(String email, String pw) throws IOException {
URL u = new URL("https://" + getServerName() + "/login");
HttpURLConnection huc = (HttpURLConnection) u.openConnection();
+
+ String csrf = getCSRF(huc);
+ String headerField = stripCookie(huc.getHeaderField("Set-Cookie"));
+
+ huc = (HttpURLConnection) u.openConnection();
+ cookie(huc, headerField);
huc.setDoOutput(true);
OutputStream os = huc.getOutputStream();
- String data = "username=" + URLEncoder.encode(email, "UTF-8") + "&password=" + URLEncoder.encode(pw, "UTF-8");
+ String data = "username=" + URLEncoder.encode(email, "UTF-8") + "&password=" + URLEncoder.encode(pw, "UTF-8") + "&csrf=" + URLEncoder.encode(csrf, "UTF-8");
os.write(data.getBytes());
os.flush();
- String headerField = huc.getHeaderField("Set-Cookie");
+ headerField = huc.getHeaderField("Set-Cookie");
+ if (headerField == null) {
+ return "";
+ }
return stripCookie(headerField);
}