import org.cacert.gigi.pages.main.RegisterPage;
import org.cacert.gigi.testUtils.TestEmailReciever.TestMail;
import org.cacert.gigi.util.DatabaseManager;
+import org.cacert.gigi.util.DatabaseManager.ImportType;
import org.cacert.gigi.util.ServerConstants;
import org.cacert.gigi.util.SimpleSigner;
import org.junit.After;
try {
DatabaseManager.run(new String[] {
testProps.getProperty("sql.driver"), testProps.getProperty("sql.url"), testProps.getProperty("sql.user"), testProps.getProperty("sql.password")
- }, true);
+ }, ImportType.TRUNCATE);
} catch (ClassNotFoundException e) {
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);
}