]> WPIA git - gigi.git/blobdiff - tests/club/wpia/gigi/pages/wot/TestVerification.java
add: enable Support to see the new RA Agent status
[gigi.git] / tests / club / wpia / gigi / pages / wot / TestVerification.java
index a25a2bc43b4887cd9667821e52d2ff61bc2920c2..dcc61fc070cf66d857ec173546001b527c415e01 100644 (file)
@@ -23,6 +23,7 @@ import org.junit.Test;
 
 import club.wpia.gigi.GigiApiException;
 import club.wpia.gigi.database.GigiPreparedStatement;
+import club.wpia.gigi.dbObjects.CATS.CATSType;
 import club.wpia.gigi.dbObjects.Country;
 import club.wpia.gigi.dbObjects.Group;
 import club.wpia.gigi.dbObjects.User;
@@ -41,6 +42,8 @@ public class TestVerification extends ManagedTest {
 
     private int applicantName;
 
+    private int applicantId;
+
     private String cookie;
 
     @Before
@@ -50,7 +53,7 @@ public class TestVerification extends ManagedTest {
         applicantM = createUniqueName() + "@example.org";
 
         createVerificationUser("a", "b", agentM, TEST_PASSWORD);
-        int applicantId = createVerifiedUser("a", "c", applicantM, TEST_PASSWORD);
+        applicantId = createVerifiedUser("a", "c", applicantM, TEST_PASSWORD);
         applicantName = User.getById(applicantId).getPreferredName().getId();
 
         User users[] = User.findByEmail(agentM);
@@ -391,4 +394,32 @@ public class TestVerification extends ManagedTest {
         loginCertificate = null;
         assertEquals(403, get(cookie, VerifyPage.PATH).getResponseCode());
     }
+
+    @Test
+    public void testVerifyWithoutValidChallenge() throws IOException, GigiApiException {
+        cookie = cookieWithCertificateLogin(User.getById(applicantId));
+        add100Points(applicantId);
+        insertRAContract(applicantId);
+        addChallengeInPast(applicantId, CATSType.AGENT_CHALLENGE);
+        assertEquals(403, get(cookie, VerifyPage.PATH).getResponseCode());
+        addChallenge(applicantId, CATSType.AGENT_CHALLENGE);
+        assertEquals(200, get(cookie, VerifyPage.PATH).getResponseCode());
+    }
+
+    @Test
+    public void testVerifyValidTTPChallenge() throws IOException, GigiApiException {
+        grant(User.getByEmail(agentM), Group.TTP_AGENT);
+        grant(User.getById(applicantId), Group.TTP_APPLICANT);
+        cookie = cookieWithCertificateLogin(User.getById(applicantId));
+        cookie = cookieWithCertificateLogin(User.getByEmail(agentM));
+
+        // test without valid challenge
+        String content = search("email=" + URLEncoder.encode(applicantM, "UTF-8") + "&day=1&month=1&year=1910");
+        assertThat(content, containsString("you need to pass the TTP RA Agent Challenge"));
+
+        // test with valid challenge
+        addChallenge(User.getByEmail(agentM).getId(), CATSType.TTP_AGENT_CHALLENGE);
+        content = search("email=" + URLEncoder.encode(applicantM, "UTF-8") + "&day=1&month=1&year=1910");
+        assertThat(content, not(containsString("you need to pass the TTP RA Agent Challenge")));
+    }
 }