X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=tests%2Fclub%2Fwpia%2Fgigi%2Fpages%2Fadmin%2FTestSEAdminPageCertSearch.java;h=74375f2f500c933baeceaa2f9c5d1a9616dd6b0a;hb=5b7941ba6f39cabd29b3eb20db0fee688c3fffde;hp=e61f559ee8dfed4918679434a107ec9d74165a46;hpb=8822b2ffdda7eb4109415a7867388a321ea6b56f;p=gigi.git diff --git a/tests/club/wpia/gigi/pages/admin/TestSEAdminPageCertSearch.java b/tests/club/wpia/gigi/pages/admin/TestSEAdminPageCertSearch.java index e61f559e..74375f2f 100644 --- a/tests/club/wpia/gigi/pages/admin/TestSEAdminPageCertSearch.java +++ b/tests/club/wpia/gigi/pages/admin/TestSEAdminPageCertSearch.java @@ -7,6 +7,7 @@ import java.net.URLConnection; import java.net.URLEncoder; import java.security.GeneralSecurityException; import java.security.KeyPair; +import java.text.SimpleDateFormat; import org.hamcrest.CoreMatchers; import org.junit.Test; @@ -15,37 +16,31 @@ import club.wpia.gigi.GigiApiException; import club.wpia.gigi.dbObjects.Certificate; import club.wpia.gigi.dbObjects.Certificate.CSRType; import club.wpia.gigi.dbObjects.Certificate.CertificateStatus; +import club.wpia.gigi.dbObjects.Certificate.RevocationType; import club.wpia.gigi.dbObjects.Certificate.SANType; import club.wpia.gigi.dbObjects.Digest; -import club.wpia.gigi.dbObjects.Group; import club.wpia.gigi.dbObjects.User; +import club.wpia.gigi.output.template.Template; import club.wpia.gigi.pages.account.certs.Certificates; import club.wpia.gigi.pages.admin.support.FindCertPage; -import club.wpia.gigi.pages.admin.support.SupportEnterTicketPage; -import club.wpia.gigi.testUtils.ClientTest; import club.wpia.gigi.testUtils.IOUtils; +import club.wpia.gigi.testUtils.SEClientTest; import club.wpia.gigi.testUtils.TestEmailReceiver.TestMail; import club.wpia.gigi.util.ServerConstants; import club.wpia.gigi.util.ServerConstants.Host; -public class TestSEAdminPageCertSearch extends ClientTest { +public class TestSEAdminPageCertSearch extends SEClientTest { private Certificate c; private String certMail; - public TestSEAdminPageCertSearch() throws IOException, GigiApiException, GeneralSecurityException, InterruptedException { - grant(u, Group.SUPPORTER); - cookie = login(email, TEST_PASSWORD); - assertEquals(302, post(cookie, SupportEnterTicketPage.PATH, "ticketno=a20140808.8&setTicket=action", 0).getResponseCode()); + private int id; + public TestSEAdminPageCertSearch() throws IOException, GigiApiException, GeneralSecurityException, InterruptedException { certMail = uniq + "_certowner@example.com"; - int id = createVerifiedUser("fn", "ln", certMail, TEST_PASSWORD); - User u1 = User.getById(id); - KeyPair kp = generateKeypair(); - String key = generatePEMCSR(kp, "CN=" + certMail); - c = new Certificate(u1, u1, Certificate.buildDN("CN", certMail), Digest.SHA512, key, CSRType.CSR, getClientProfile(), new Certificate.SubjectAlternateName(SANType.EMAIL, certMail)); - await(c.issue(null, "2y", u)); + id = createVerifiedUser("fn", "ln", certMail, TEST_PASSWORD); + c = createCertificate(); } @Test @@ -79,6 +74,27 @@ public class TestSEAdminPageCertSearch extends ClientTest { assertThat(tm.getMessage(), CoreMatchers.containsString(c.getSerial())); } assertEquals(CertificateStatus.REVOKED, c.getStatus()); + + } + + @Test + public void testShowRevocation() throws GeneralSecurityException, IOException, GigiApiException, InterruptedException { + Certificate c1 = createCertificate(); + await(c1.revoke(RevocationType.SUPPORT)); + URLConnection uc = post(cookie, FindCertPage.PATH, "certType=email&process=Next&cert=" + URLEncoder.encode(certMail, "UTF-8"), 0); + SimpleDateFormat sdf = new SimpleDateFormat(Template.UTC_TIMESTAMP_FORMAT); + String revokeDate = sdf.format(c1.getRevocationDate()); + String result = IOUtils.readURL(uc); + assertThat(result, CoreMatchers.containsString(revokeDate)); + assertThat(result, CoreMatchers.containsString("N/A")); } + private Certificate createCertificate() throws GeneralSecurityException, IOException, GigiApiException, InterruptedException { + User u1 = User.getById(id); + KeyPair kp = generateKeypair(); + String key = generatePEMCSR(kp, "CN=" + certMail); + Certificate c1 = new Certificate(u1, u1, Certificate.buildDN("CN", certMail), Digest.SHA512, key, CSRType.CSR, getClientProfile(), new Certificate.SubjectAlternateName(SANType.EMAIL, certMail)); + await(c1.issue(null, "2y", u)); + return c1; + } }