X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=tests%2Forg%2Fcacert%2Fgigi%2Fpages%2Faccount%2FTestPasswordResetExternal.java;h=7112bd2d4e71494358614dd80e4a76f494816249;hp=8acef6b2d451ea49df3872cc82c1b63216f463e8;hb=b59c37e88149d0463ab4b802cacb6f0ea883acfb;hpb=ef6c1c7fe9290cfefb355a6c0d4794ab220c4619 diff --git a/tests/org/cacert/gigi/pages/account/TestPasswordResetExternal.java b/tests/org/cacert/gigi/pages/account/TestPasswordResetExternal.java index 8acef6b2..7112bd2d 100644 --- a/tests/org/cacert/gigi/pages/account/TestPasswordResetExternal.java +++ b/tests/org/cacert/gigi/pages/account/TestPasswordResetExternal.java @@ -1,16 +1,19 @@ package org.cacert.gigi.pages.account; +import static org.hamcrest.CoreMatchers.*; import static org.junit.Assert.*; import java.io.IOException; import java.io.OutputStream; import java.io.UnsupportedEncodingException; +import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; import java.net.URLEncoder; import org.cacert.gigi.dbObjects.User; +import org.cacert.gigi.pages.PasswordResetPage; import org.cacert.gigi.pages.wot.TestAssurance; import org.cacert.gigi.testUtils.ClientTest; import org.cacert.gigi.testUtils.IOUtils; @@ -26,15 +29,17 @@ public class TestPasswordResetExternal extends ClientTest { String cookie2 = login(u.getEmail(), TEST_PASSWORD); URLConnection uc = TestAssurance.buildupAssureFormConnection(cookie2, email, true); String avalue = RandomToken.generateToken(32); - uc.getOutputStream().write(("date=1910-01-01&location=testcase&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10&passwordReset=1&passwordResetValue=" + URLEncoder.encode(avalue, "UTF-8")).getBytes("UTF-8")); + uc.getOutputStream().write(("assuredName=" + this.u.getPreferredName().getId() + "&date=" + TestAssurance.validVerificationDateString() + "&location=testcase&countryCode=DE&certify=1&rules=1&assertion=1&points=10&passwordReset=1&passwordResetValue=" + URLEncoder.encode(avalue, "UTF-8")).getBytes("UTF-8")); uc.getOutputStream().flush(); String error = fetchStartErrorMessage(IOUtils.readURL(uc)); assertNull(error); - TestMail mail = getMailReciever().receive(); - System.out.println(mail.getMessage()); + TestMail mail = getMailReceiver().receive(); + assertThat(mail.getSubject(), containsString("Verification")); + mail = getMailReceiver().receive(); String link = mail.extractLink(); String npw = TEST_PASSWORD + "'"; + System.out.println(link); assertNotNull(toPasswordReset(avalue, link, npw, npw + "'")); assertNotNull(toPasswordReset(avalue + "'", link, npw, npw)); assertNotNull(toPasswordReset(avalue, link, "a", "a")); @@ -48,11 +53,13 @@ public class TestPasswordResetExternal extends ClientTest { String headerField = uc2.getHeaderField("Set-Cookie"); assertNotNull(headerField); String cookie3 = stripCookie(headerField); - uc2 = new URL(link).openConnection(); + uc2 = new URL("https://" + getServerName() + PasswordResetPage.PATH).openConnection(); cookie(uc2, cookie3); uc2.setDoOutput(true); OutputStream o = uc2.getOutputStream(); o.write(("csrf=" + csrf + "&pword1=" + URLEncoder.encode(npw, "UTF-8") + "&pword2=" + URLEncoder.encode(npw2, "UTF-8") + "&private_token=" + URLEncoder.encode(avalue, "UTF-8")).getBytes("UTF-8")); - return fetchStartErrorMessage(IOUtils.readURL(uc2)); + System.out.println(((HttpURLConnection) uc2).getResponseCode()); + String readURL = IOUtils.readURL(uc2); + return fetchStartErrorMessage(readURL); } }