X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;ds=inline;f=tests%2Forg%2Fcacert%2Fgigi%2Fpages%2Fwot%2FTestAssurance.java;h=6a585abd4e1dc64acdae125289cc8bcb596be2b1;hb=a8a6c492e30d4202e499778b69a5354494f86f84;hp=ffc9ea5788fc1f83f04b229572fdf88aad79a6ba;hpb=1c7e27416fbfffcacf7b6f9a8765e9dd9671c2b7;p=gigi.git diff --git a/tests/org/cacert/gigi/pages/wot/TestAssurance.java b/tests/org/cacert/gigi/pages/wot/TestAssurance.java index ffc9ea57..6a585abd 100644 --- a/tests/org/cacert/gigi/pages/wot/TestAssurance.java +++ b/tests/org/cacert/gigi/pages/wot/TestAssurance.java @@ -31,6 +31,7 @@ public class TestAssurance extends ManagedTest { @Before public void setup() throws IOException { + clearCaches(); assurerM = createUniqueName() + "@cacert-test.org"; assureeM = createUniqueName() + "@cacert-test.org"; @@ -43,23 +44,29 @@ public class TestAssurance extends ManagedTest { @Test public void testAssureSearch() throws IOException { String loc = search("email=" + URLEncoder.encode(assureeM, "UTF-8") + "&day=1&month=1&year=1910"); - assertTrue(loc, loc.contains("type=\"checkbox\" name=\"CCAAgreed\"")); + assertTrue(loc, loc.contains("type=\"checkbox\" name=\"tos_agree\"")); } @Test public void testAssureSearchEmail() throws IOException { String loc = search("email=1" + URLEncoder.encode(assureeM, "UTF-8") + "&day=1&month=1&year=1910"); - assertTrue(loc, !loc.contains("type=\"checkbox\" name=\"CCAAgreed\"")); + assertTrue(loc, !loc.contains("type=\"checkbox\" name=\"tos_agree\"")); + } + + @Test + public void testAssureSearchDobInvalid() throws IOException { + String loc = search("email=" + URLEncoder.encode(assureeM, "UTF-8") + "&day=1&month=1&year=mal"); + assertNotNull(fetchStartErrorMessage(loc)); } @Test public void testAssureSearchDob() throws IOException { String loc = search("email=" + URLEncoder.encode(assureeM, "UTF-8") + "&day=2&month=1&year=1910"); - assertTrue(loc, !loc.contains("type=\"checkbox\" name=\"CCAAgreed\"")); + assertTrue(loc, !loc.contains("type=\"checkbox\" name=\"tos_agree\"")); loc = search("email=" + URLEncoder.encode(assureeM, "UTF-8") + "&day=1&month=2&year=1910"); - assertTrue(loc, !loc.contains("type=\"checkbox\" name=\"CCAAgreed\"")); + assertTrue(loc, !loc.contains("type=\"checkbox\" name=\"tos_agree\"")); loc = search("email=" + URLEncoder.encode(assureeM, "UTF-8") + "&day=1&month=1&year=1911"); - assertTrue(loc, !loc.contains("type=\"checkbox\" name=\"CCAAgreed\"")); + assertTrue(loc, !loc.contains("type=\"checkbox\" name=\"tos_agree\"")); } private String search(String query) throws MalformedURLException, IOException, UnsupportedEncodingException { @@ -73,14 +80,14 @@ public class TestAssurance extends ManagedTest { @Test public void testAssureForm() throws IOException { - String error = getError("date=2000-01-01&location=testcase&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10"); + String error = getError("date=2000-01-01&location=testcase&certify=1&rules=1&tos_agree=1&assertion=1&points=10"); assertNull(error); } @Test public void testAssureFormContanisData() throws IOException { URLConnection uc = buildupAssureFormConnection(true); - uc.getOutputStream().write(("date=2000-01-01&location=testcase&rules=1&CCAAgreed=1&assertion=1&points=10").getBytes("UTF-8")); + uc.getOutputStream().write(("date=2000-01-01&location=testcase&rules=1&tos_agree=1&assertion=1&points=10").getBytes("UTF-8")); uc.getOutputStream().flush(); String data = IOUtils.readURL(uc); assertThat(data, containsString("2000-01-01")); @@ -91,7 +98,7 @@ public class TestAssurance extends ManagedTest { public void testAssureFormNoCSRF() throws IOException { // override csrf HttpURLConnection uc = (HttpURLConnection) buildupAssureFormConnection(false); - uc.getOutputStream().write(("date=2000-01-01&location=testcase&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10").getBytes("UTF-8")); + uc.getOutputStream().write(("date=2000-01-01&location=testcase&certify=1&rules=1&tos_agree=1&assertion=1&points=10").getBytes("UTF-8")); uc.getOutputStream().flush(); assertEquals(500, uc.getResponseCode()); } @@ -100,41 +107,56 @@ public class TestAssurance extends ManagedTest { public void testAssureFormWrongCSRF() throws IOException { // override csrf HttpURLConnection uc = (HttpURLConnection) buildupAssureFormConnection(false); - uc.getOutputStream().write(("date=2000-01-01&location=testcase&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10&csrf=aragc").getBytes("UTF-8")); + uc.getOutputStream().write(("date=2000-01-01&location=testcase&certify=1&rules=1&tos_agree=1&assertion=1&points=10&csrf=aragc").getBytes("UTF-8")); uc.getOutputStream().flush(); assertEquals(500, uc.getResponseCode()); } @Test public void testAssureFormRaceName() throws IOException, SQLException { - testAssureFormRace(true); + testAssureFormRace(true, false); } @Test public void testAssureFormRaceDoB() throws IOException, SQLException { - testAssureFormRace(false); + testAssureFormRace(false, false); + } + + @Test + public void testAssureFormRaceNameBlind() throws IOException, SQLException { + testAssureFormRace(true, true); } - public void testAssureFormRace(boolean name) throws IOException, SQLException { + @Test + public void testAssureFormRaceDoBBlind() throws IOException, SQLException { + testAssureFormRace(false, true); + } + + public void testAssureFormRace(boolean name, boolean succeed) throws IOException, SQLException { URLConnection uc = buildupAssureFormConnection(true); String assureeCookie = login(assureeM, TEST_PASSWORD); - String newName = "lname=" + (name ? "c" : "a") + "&fname=a&mname=&suffix="; - String newDob = "day=1&month=1&year=" + (name ? 1910 : 1911); + String newName = "lname=" + (name && !succeed ? "a" : "c") + "&fname=a&mname=&suffix="; + String newDob = "day=1&month=1&year=" + ( !name && !succeed ? 1911 : 1910); assertNull(executeBasicWebInteraction(assureeCookie, MyDetails.PATH, newName + "&" + newDob + "&processDetails", 0)); - uc.getOutputStream().write(("date=2000-01-01&location=testcase&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10").getBytes("UTF-8")); + uc.getOutputStream().write(("date=2000-01-01&location=testcase&certify=1&rules=1&tos_agree=1&assertion=1&points=10").getBytes("UTF-8")); uc.getOutputStream().flush(); String error = fetchStartErrorMessage(IOUtils.readURL(uc)); - assertTrue(error, !error.startsWith("")); + if (succeed) { + assertNull(error); + } else { + assertTrue(error, !error.startsWith("")); + assertThat(error, containsString("changed his personal details")); + } } @Test public void testAssureFormFuture() throws IOException { SimpleDateFormat sdf = new SimpleDateFormat("yyyy"); int year = Integer.parseInt(sdf.format(new Date(System.currentTimeMillis()))) + 2; - String error = getError("date=" + year + "-01-01&location=testcase&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10"); + String error = getError("date=" + year + "-01-01&location=testcase&certify=1&rules=1&tos_agree=1&assertion=1&points=10"); assertTrue(error, !error.startsWith("")); } @@ -145,42 +167,42 @@ public class TestAssurance extends ManagedTest { c.setTimeInMillis(System.currentTimeMillis()); c.add(Calendar.HOUR_OF_DAY, 12); - String error = getError("date=" + sdf.format(new Date(c.getTimeInMillis())) + "&location=testcase&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10"); + String error = getError("date=" + sdf.format(new Date(c.getTimeInMillis())) + "&location=testcase&certify=1&rules=1&tos_agree=1&assertion=1&points=10"); assertNull(error); } @Test public void testAssureFormNoLoc() throws IOException { - String error = getError("date=2000-01-01&location=a&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10"); + String error = getError("date=2000-01-01&location=a&certify=1&rules=1&tos_agree=1&assertion=1&points=10"); assertTrue(error, !error.startsWith("")); - error = getError("date=2000-01-01&location=&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10"); + error = getError("date=2000-01-01&location=&certify=1&rules=1&tos_agree=1&assertion=1&points=10"); assertTrue(error, !error.startsWith("")); } @Test public void testAssureFormInvalDate() throws IOException { - String error = getError("date=20000101&location=testcase&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10"); + String error = getError("date=20000101&location=testcase&certify=1&rules=1&tos_agree=1&assertion=1&points=10"); assertTrue(error, !error.startsWith("")); - error = getError("date=&location=testcase&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10"); + error = getError("date=&location=testcase&certify=1&rules=1&tos_agree=1&assertion=1&points=10"); assertTrue(error, !error.startsWith("")); } @Test public void testAssureFormBoxes() throws IOException { - String error = getError("date=2000-01-01&location=testcase&certify=0&rules=1&CCAAgreed=1&assertion=1&points=10"); + String error = getError("date=2000-01-01&location=testcase&certify=0&rules=1&tos_agree=1&assertion=1&points=10"); assertTrue(error, !error.startsWith("")); - error = getError("date=2000-01-01&location=testcase&certify=1&rules=&CCAAgreed=1&assertion=1&points=10"); + error = getError("date=2000-01-01&location=testcase&certify=1&rules=&tos_agree=1&assertion=1&points=10"); assertTrue(error, !error.startsWith("")); - error = getError("date=2000-01-01&location=testcase&certify=1&rules=1&CCAAgreed=a&assertion=1&points=10"); + error = getError("date=2000-01-01&location=testcase&certify=1&rules=1&tos_agree=a&assertion=1&points=10"); assertTrue(error, !error.startsWith("")); - error = getError("date=2000-01-01&location=testcase&certify=1&rules=1&CCAAgreed=1&assertion=z&points=10"); + error = getError("date=2000-01-01&location=testcase&certify=1&rules=1&tos_agree=1&assertion=z&points=10"); assertTrue(error, !error.startsWith("")); } @Test public void testAssureListingValid() throws IOException { String uniqueLoc = createUniqueName(); - String error = getError("date=2000-01-01&location=" + uniqueLoc + "&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10"); + String error = getError("date=2000-01-01&location=" + uniqueLoc + "&certify=1&rules=1&tos_agree=1&assertion=1&points=10"); assertNull(error); String cookie = login(assureeM, TEST_PASSWORD); URLConnection url = get(cookie, MyPoints.PATH); @@ -192,7 +214,7 @@ public class TestAssurance extends ManagedTest { @Test public void testAssurerListingValid() throws IOException { String uniqueLoc = createUniqueName(); - String error = getError("date=2000-01-01&location=" + uniqueLoc + "&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10"); + String error = getError("date=2000-01-01&location=" + uniqueLoc + "&certify=1&rules=1&tos_agree=1&assertion=1&points=10"); assertNull(error); String cookie = login(assurerM, TEST_PASSWORD); URLConnection url = get(cookie, MyPoints.PATH);