Repository: cxf-fediz
Updated Branches:
  refs/heads/master 0829b2eae -> 89ac63f2b


Test adding + deleting more clients


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

Branch: refs/heads/master
Commit: d38313f6b8dee37d70310b80549f64bb3c8856bb
Parents: 0829b2e
Author: Colm O hEigeartaigh <[email protected]>
Authored: Fri Jan 15 14:05:03 2016 +0000
Committer: Colm O hEigeartaigh <[email protected]>
Committed: Fri Jan 15 14:05:03 2016 +0000

----------------------------------------------------------------------
 .../cxf/fediz/systests/oidc/OIDCTest.java       | 75 ++++++++++++++------
 1 file changed, 53 insertions(+), 22 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf-fediz/blob/d38313f6/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 8b4b0ec..060fff2 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
@@ -207,7 +207,7 @@ public class OIDCTest {
         return "fedizhelloworld";
     }
     
-    // Runs as BeforeClass: Login to the OIDC Clients page + create a new 
client
+    // Runs as BeforeClass: Login to the OIDC Clients page + create two new 
clients
     private static void loginToClientsPage(String rpPort, String idpPort) 
throws Exception {
         String url = "https://localhost:"; + rpPort + "/fediz-oidc/clients";
         String user = "alice";
@@ -220,28 +220,43 @@ public class OIDCTest {
         Assert.assertTrue(bodyTextContent.contains("Registered Clients"));
         
         // Now try to register a new client
+        String registeredClientPage = 
+            registerNewClient(webClient, url, "new-client", 
"http://127.0.0.1";);
+        Assert.assertTrue(registeredClientPage.contains("Registered Clients"));
+        Assert.assertTrue(registeredClientPage.contains("new-client"));
+        Assert.assertTrue(registeredClientPage.contains("http://127.0.0.1";));
+        
+        // Try to register another new client
+        registeredClientPage = 
+            registerNewClient(webClient, url, "new-client2", 
"http://127.0.1.1";);
+        Assert.assertTrue(registeredClientPage.contains("Registered Clients"));
+        Assert.assertTrue(registeredClientPage.contains("new-client"));
+        Assert.assertTrue(registeredClientPage.contains("http://127.0.0.1";));
+        Assert.assertTrue(registeredClientPage.contains("new-client2"));
+        Assert.assertTrue(registeredClientPage.contains("http://127.0.1.1";));
+        
+        webClient.close();
+    }
+    
+    private static String registerNewClient(WebClient webClient, String url,
+                                            String clientName, String 
redirectURI) throws Exception {
         HtmlPage registerPage = webClient.getPage(url + "/register");
         
         final HtmlForm form = registerPage.getForms().get(0);
         
         // Set new client values
         final HtmlTextInput clientNameInput = 
form.getInputByName("client_name");
-        clientNameInput.setValueAttribute("new-client");
+        clientNameInput.setValueAttribute(clientName);
         final HtmlTextInput redirectURIInput = 
form.getInputByName("client_redirectURI");
-        redirectURIInput.setValueAttribute("http://127.0.0.1";);
+        redirectURIInput.setValueAttribute(redirectURI);
 
         final HtmlButton button = form.getButtonByName("submit_button");
         final HtmlPage rpPage = button.click();
-
-        String registeredClientPage = rpPage.getBody().getTextContent();
-        Assert.assertTrue(registeredClientPage.contains("Registered Clients"));
-        Assert.assertTrue(registeredClientPage.contains("new-client"));
-        Assert.assertTrue(registeredClientPage.contains("http://127.0.0.1";));
         
-        webClient.close();
+        return rpPage.getBody().getTextContent();
     }
     
-    // Runs as AfterClass: Login to the OIDC Clients page + delete the created 
client!
+    // Runs as AfterClass: Login to the OIDC Clients page + delete the created 
clients!
     private static void loginToClientsPageAndDeleteClient(String rpPort, 
String idpPort) throws Exception {
         String url = "https://localhost:"; + rpPort + "/fediz-oidc/clients";
         String user = "alice";
@@ -257,8 +272,27 @@ public class OIDCTest {
         HtmlTable table = loginPage.getHtmlElementById("registered_clients");
         String clientId = table.getCellAt(1, 1).asText().trim();
         Assert.assertNotNull(clientId);
+        String clientId2 = table.getCellAt(2, 1).asText().trim();
+        Assert.assertNotNull(clientId2);
         
         // Now go to the specific client page
+        HtmlPage registeredClientsPage = deleteClient(webClient, url, 
clientId);
+
+        // Check we have one more registered clients
+        table = registeredClientsPage.getHtmlElementById("registered_clients");
+        Assert.assertEquals(2, table.getRowCount());
+        
+        // Now delete the other client
+        registeredClientsPage = deleteClient(webClient, url, clientId2);
+
+        // Check we have no more registered clients
+        table = registeredClientsPage.getHtmlElementById("registered_clients");
+        Assert.assertEquals(1, table.getRowCount());
+        
+        webClient.close();
+    }
+    
+    private static HtmlPage deleteClient(WebClient webClient, String url, 
String clientId) throws Exception {
         HtmlPage clientPage = webClient.getPage(url + "/" + clientId);
         
         final HtmlForm deleteForm = clientPage.getFormByName("deleteForm");
@@ -266,18 +300,12 @@ public class OIDCTest {
         
         // 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();
+        return button.click();
     }
     
-    // Test that we managed to create a new Client ok
+    // Test that we managed to create the clients ok
     @org.junit.Test
-    public void testClientCreated() throws Exception {
+    public void testCreatedClients() throws Exception {
         String url = "https://localhost:"; + getRpHttpsPort() + 
"/fediz-oidc/clients";
         String user = "alice";
         String password = "ecila";
@@ -290,6 +318,11 @@ public class OIDCTest {
         
         // Get the new client identifier
         HtmlTable table = loginPage.getHtmlElementById("registered_clients");
+        
+        // 2 clients
+        Assert.assertEquals(table.getRows().size(), 3);
+        
+        // Now check the first client
         String clientId = table.getCellAt(1, 1).asText().trim();
         Assert.assertNotNull(clientId);
         
@@ -301,9 +334,7 @@ public class OIDCTest {
         
         // Check the redirect URI
         String redirectURI = table.getCellAt(1, 3).asText().trim();
-        Assert.assertEquals("http://127.0.0.1";, redirectURI);
-        
-        Assert.assertEquals(table.getRows().size(), 2);
+        Assert.assertEquals("http://127.0.1.1";, redirectURI);
         
         // Now check the specific client page
         HtmlPage clientPage = webClient.getPage(url + "/" + clientId);

Reply via email to