From 46f79afcdf6712a830db12c6859ed91111a9b464 Mon Sep 17 00:00:00 2001 From: INOPIAE Date: Sat, 2 Jul 2016 17:28:01 +0200 Subject: [PATCH] add: new test cases Change-Id: I889e978b27733008f336b3d13f3d11143d63f0cd --- .../gigi/pages/orga/TestOrgManagement.java | 81 +++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/tests/org/cacert/gigi/pages/orga/TestOrgManagement.java b/tests/org/cacert/gigi/pages/orga/TestOrgManagement.java index 72767106..97002712 100644 --- a/tests/org/cacert/gigi/pages/orga/TestOrgManagement.java +++ b/tests/org/cacert/gigi/pages/orga/TestOrgManagement.java @@ -4,7 +4,9 @@ import static org.hamcrest.CoreMatchers.*; import static org.junit.Assert.*; import java.io.IOException; +import java.io.UnsupportedEncodingException; import java.net.HttpURLConnection; +import java.net.MalformedURLException; import java.net.URLConnection; import java.net.URLEncoder; import java.sql.SQLException; @@ -160,4 +162,83 @@ public class TestOrgManagement extends OrgTest { assertEquals("Köln" + DIFFICULT_CHARS, o1.getPostalAddress()); o1.delete(); } + + /** + * Tests various contraints on organisaion fields. + */ + @Test + public void testLengthConstraint() throws IOException, GigiApiException { + Organisation o1 = createUniqueOrg(); + String str128 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz-_ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz-_"; + String se = ""; + String s64 = str128.substring(0, 64); + String s65 = str128.substring(0, 65); + + String s128 = str128; + String s129 = str128 + "a"; + + assertNull(upCertData(o1, o1.getName(), o1.getState(), o1.getProvince(), o1.getCity())); + + // test organisation name + assertNotNull(upCertData(o1, "", o1.getState(), o1.getProvince(), o1.getCity())); + assertNull(upCertData(o1, "A", o1.getState(), o1.getProvince(), o1.getCity())); + assertNull(upCertData(o1, s64, o1.getState(), o1.getProvince(), o1.getCity())); + assertNotNull(upCertData(o1, s65, o1.getState(), o1.getProvince(), o1.getCity())); + + // test state + assertNotNull(upCertData(o1, o1.getName(), o1.getState(), se, o1.getCity())); + assertNull(upCertData(o1, o1.getName(), o1.getState(), "A", o1.getCity())); + assertNull(upCertData(o1, o1.getName(), o1.getState(), s128, o1.getCity())); + assertNotNull(upCertData(o1, o1.getName(), o1.getState(), s129, o1.getCity())); + + // test town + assertNotNull(upCertData(o1, o1.getName(), o1.getState(), o1.getProvince(), se)); + assertNull(upCertData(o1, o1.getName(), o1.getState(), o1.getProvince(), "A")); + assertNull(upCertData(o1, o1.getName(), o1.getState(), o1.getProvince(), s128)); + assertNotNull(upCertData(o1, o1.getName(), o1.getState(), o1.getProvince(), s129)); + + // test country + assertNotNull(upCertData(o1, o1.getName(), "", o1.getProvince(), o1.getCity())); + assertNotNull(upCertData(o1, o1.getName(), "D", o1.getProvince(), o1.getCity())); + assertNull(upCertData(o1, o1.getName(), "DE", o1.getProvince(), o1.getCity())); + assertNotNull(upCertData(o1, o1.getName(), "DES", o1.getProvince(), o1.getCity())); + + // test contact mail + assertNull(upOptData(o1, o1.getContactEmail())); + assertNotNull(upOptData(o1, "_mail@domail")); + + } + + /** + * Updates Organisation optional data via web interface. + * + * @param o1 + * Organisation to update. + * @param email + * the new contact email + * @return an error message or null + */ + private String upOptData(Organisation o1, String email) throws IOException, MalformedURLException, UnsupportedEncodingException { + return executeBasicWebInteraction(cookie, ViewOrgPage.DEFAULT_PATH + "/" + o1.getId(), "action=updateOrganisationData&contact=" + email + "&optionalName=" + o1.getOptionalName() + "&postalAddress=" + o1.getPostalAddress(), 0); + } + + /** + * Updates Organisation certificate data via web interface. + * + * @param o1 + * Organisation to update. + * @param o + * the new name + * @param c + * the new country + * @param province + * the new "province/state" + * @param ct + * the new city or "locality" + * @return an error message or null + */ + private String upCertData(Organisation o1, String o, String c, String province, String ct) throws IOException, MalformedURLException, UnsupportedEncodingException { + return executeBasicWebInteraction(cookie, ViewOrgPage.DEFAULT_PATH + "/" + o1.getId(), "action=updateCertificateData&O=" + o + "&C=" + c + "&ST=" + province + "&L=" + ct, 0); + } + } -- 2.39.2