You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by co...@apache.org on 2016/01/14 18:30:55 UTC

cxf-fediz git commit: More tests

Repository: cxf-fediz
Updated Branches:
  refs/heads/master b63d8dd0c -> de6f9870f


More tests


Project: http://git-wip-us.apache.org/repos/asf/cxf-fediz/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf-fediz/commit/de6f9870
Tree: http://git-wip-us.apache.org/repos/asf/cxf-fediz/tree/de6f9870
Diff: http://git-wip-us.apache.org/repos/asf/cxf-fediz/diff/de6f9870

Branch: refs/heads/master
Commit: de6f9870f772fb43318f71d00684077bcc13100a
Parents: b63d8dd
Author: Colm O hEigeartaigh <co...@apache.org>
Authored: Thu Jan 14 17:30:46 2016 +0000
Committer: Colm O hEigeartaigh <co...@apache.org>
Committed: Thu Jan 14 17:30:46 2016 +0000

----------------------------------------------------------------------
 .../src/main/webapp/WEB-INF/views/client.jsp    | 10 ++--
 .../cxf/fediz/systests/oidc/OIDCTest.java       | 53 +++++++++++++++++++-
 2 files changed, 56 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf-fediz/blob/de6f9870/services/oidc/src/main/webapp/WEB-INF/views/client.jsp
----------------------------------------------------------------------
diff --git a/services/oidc/src/main/webapp/WEB-INF/views/client.jsp b/services/oidc/src/main/webapp/WEB-INF/views/client.jsp
index 90dd1de..750bae0 100644
--- a/services/oidc/src/main/webapp/WEB-INF/views/client.jsp
+++ b/services/oidc/src/main/webapp/WEB-INF/views/client.jsp
@@ -69,7 +69,7 @@
 <div class="padded">
 <h1><%= client.getApplicationName() %></h1>
 <br/>
-<table border="1">
+<table border="1" id=client>
     <%
        SimpleDateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm", Locale.US);
        dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
@@ -117,9 +117,9 @@
     if (client.getClientSecret() != null) {
 %>
 <td class="td_no_border">
-<form action="/fediz-oidc/clients/<%= client.getClientId() + "/reset"%>" method="POST">
+<form name="resetSecretForm" action="/fediz-oidc/clients/<%= client.getClientId() + "/reset"%>" method="POST">
 		<div data-type="control_button" class="form-line">
-				<button class="form-submit-button" type="submit">Reset Secret</button>
+				<button name="submit_reset_button" class="form-submit-button" type="submit">Reset Secret</button>
 		</div>
 </form>
 </td>
@@ -127,9 +127,9 @@
     }
 %>
 <td class="td_no_border">
-<form action="/fediz-oidc/clients/<%= client.getClientId() + "/remove"%>" method="POST">
+<form name="deleteForm" action="/fediz-oidc/clients/<%= client.getClientId() + "/remove"%>" method="POST">
 		<div data-type="control_button" class="form-line">
-				<button class="form-submit-button" type="submit">Delete Client</button>
+				<button name="submit_delete_button" class="form-submit-button" type="submit">Delete Client</button>
 		</div>
 </form>
 </td>

http://git-wip-us.apache.org/repos/asf/cxf-fediz/blob/de6f9870/systests/oidc/src/test/java/org/apache/cxf/fediz/systests/oidc/OIDCTest.java
----------------------------------------------------------------------
diff --git a/systests/oidc/src/test/java/org/apache/cxf/fediz/systests/oidc/OIDCTest.java b/systests/oidc/src/test/java/org/apache/cxf/fediz/systests/oidc/OIDCTest.java
index d8f20af..8b4b0ec 100644
--- a/systests/oidc/src/test/java/org/apache/cxf/fediz/systests/oidc/OIDCTest.java
+++ b/systests/oidc/src/test/java/org/apache/cxf/fediz/systests/oidc/OIDCTest.java
@@ -161,7 +161,15 @@ public class OIDCTest {
     }
     
     @AfterClass
-    public static void cleanup() {
+    public static void cleanup() throws Exception {
+        try {
+            loginToClientsPageAndDeleteClient(rpHttpsPort, idpHttpsPort);
+        } finally {
+            shutdownServers();
+        }
+    }
+    
+    private static void shutdownServers() {
         try {
             if (idpServer.getServer() != null
                 && idpServer.getServer().getState() != LifecycleState.DESTROYED) {
@@ -199,7 +207,7 @@ public class OIDCTest {
         return "fedizhelloworld";
     }
     
-    // Login to the OIDC Clients page + create a new client
+    // Runs as BeforeClass: Login to the OIDC Clients page + create a new client
     private static void loginToClientsPage(String rpPort, String idpPort) throws Exception {
         String url = "https://localhost:" + rpPort + "/fediz-oidc/clients";
         String user = "alice";
@@ -233,6 +241,40 @@ public class OIDCTest {
         webClient.close();
     }
     
+    // Runs as AfterClass: Login to the OIDC Clients page + delete the created client!
+    private static void loginToClientsPageAndDeleteClient(String rpPort, String idpPort) throws Exception {
+        String url = "https://localhost:" + rpPort + "/fediz-oidc/clients";
+        String user = "alice";
+        String password = "ecila";
+        
+        // Login to the client page successfully
+        WebClient webClient = setupWebClient(user, password, idpPort);
+        HtmlPage loginPage = login(url, webClient);
+        final String bodyTextContent = loginPage.getBody().getTextContent();
+        Assert.assertTrue(bodyTextContent.contains("Registered Clients"));
+        
+        // Get the client identifier
+        HtmlTable table = loginPage.getHtmlElementById("registered_clients");
+        String clientId = table.getCellAt(1, 1).asText().trim();
+        Assert.assertNotNull(clientId);
+        
+        // Now go to the specific client page
+        HtmlPage clientPage = webClient.getPage(url + "/" + clientId);
+        
+        final HtmlForm deleteForm = clientPage.getFormByName("deleteForm");
+        Assert.assertNotNull(deleteForm);
+        
+        // Delete the client
+        final HtmlButton button = deleteForm.getButtonByName("submit_delete_button");
+        final HtmlPage registeredClientsPage = button.click();
+        
+        // Check we have no more registered clients
+        table = registeredClientsPage.getHtmlElementById("registered_clients");
+        Assert.assertEquals(1, table.getRowCount());
+        
+        webClient.close();
+    }
+    
     // Test that we managed to create a new Client ok
     @org.junit.Test
     public void testClientCreated() throws Exception {
@@ -262,6 +304,13 @@ public class OIDCTest {
         Assert.assertEquals("http://127.0.0.1", redirectURI);
         
         Assert.assertEquals(table.getRows().size(), 2);
+        
+        // Now check the specific client page
+        HtmlPage clientPage = webClient.getPage(url + "/" + clientId);
+        HtmlTable clientTable = clientPage.getHtmlElementById("client");
+        Assert.assertEquals(clientId, clientTable.getCellAt(1, 0).asText().trim());
+        
+        webClient.close();
     }
     
     /*