From 113489da3f15eb5ba56179801d78a7977aa4d8c6 Mon Sep 17 00:00:00 2001 From: Peter Hormanns Date: Fri, 24 May 2013 11:38:46 +0200 Subject: [PATCH] update test sw pac migration --- .../de/hsadmin/remote/PacMigrationTest.java | 207 ++++++++++++------ 1 file changed, 143 insertions(+), 64 deletions(-) diff --git a/hsarback/test/de/hsadmin/remote/PacMigrationTest.java b/hsarback/test/de/hsadmin/remote/PacMigrationTest.java index 55de485..c807fc4 100644 --- a/hsarback/test/de/hsadmin/remote/PacMigrationTest.java +++ b/hsarback/test/de/hsadmin/remote/PacMigrationTest.java @@ -39,80 +39,54 @@ public class PacMigrationTest { } @Test - public void testCreate() { + public void testCreateDW() { int count = getPacsCount(); String user = "ad"; - String grantingTicketURL = cas.getGrantingTicketURL(user); - Map setParams = new HashMap(); - setParams.put("name", "aaa04"); - setParams.put("hive", "h99"); - setParams.put("customer", config.getProperty("accountprefix.customer") + "-aaa"); - setParams.put("basepac", BasePacType.PAC_DW); - setParams.put("curinetaddr", "176.9.242.77"); - HashMap components = new HashMap(); - components.put("QUOTA", "640"); - components.put("TRAFFIC", "4"); - components.put("DAEMON", "1"); - setParams.put("components", components); - Object[] params = new Object[] { user, - cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), - setParams }; try { - Object execute = client.execute(MODULE + ".add", params); - assertTrue(execute instanceof Map); - Map whereParams = new HashMap(); - whereParams.put("name", "aaa04"); - params = new Object[] { user, - cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), - whereParams }; - execute = client.execute(MODULE + ".search", params); - assertNotNull(execute); - assertTrue(execute instanceof Object[]); - Object[] untypedResultArray = (Object[]) execute; - assertEquals(1, untypedResultArray.length); - assertTrue(untypedResultArray[0] instanceof Map); - @SuppressWarnings("unchecked") - Map pacResultMap = (Map) untypedResultArray[0]; - assertEquals(BasePacType.PAC_DW, pacResultMap.get("basepac")); - Object compMapObj = pacResultMap.get("components"); - assertTrue(compMapObj instanceof Map); - @SuppressWarnings("unchecked") - Map compMap = (Map) compMapObj; - assertEquals("640", compMap.get("QUOTA")); - assertEquals("4", compMap.get("TRAFFIC")); - } catch (XmlRpcException e) { - fail(e.getMessage()); - } - assertEquals(count + 1, getPacsCount()); - setParams = new HashMap(); - Map whereParams = new HashMap(); - setParams.put("password", "test123"); - whereParams.put("name", "aaa04"); - params = new Object[] { user, - cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), - setParams, whereParams }; - try { - client.execute("user.update", params); + String grantingTicketURL = cas.getGrantingTicketURL(user); + Object execute = addPac(user, grantingTicketURL, + "aaa04", BasePacType.PAC_DW, "176.9.242.77", + 640, 4, 1); + assertEquals(count + 1, getPacsCount()); + validateAddedPac(execute, BasePacType.PAC_DW, 640, 4, 1); + setPacAdminPassword(user, grantingTicketURL, "aaa04", "test123"); } catch (XmlRpcException e) { fail(e.getMessage()); } } @Test - public void testUpdate() { + public void testCreateSW() { + int count = getPacsCount(); String user = "ad"; - String grantingTicketURL = cas.getGrantingTicketURL(user); - Map setParams = new HashMap(); - Map components = new HashMap(); - setParams.put("basepac", BasePacType.PAC_WEB); - setParams.put("components", components); -// components.put("QUOTA", "2048"); // does not work till now - Map whereParams = new HashMap(); - whereParams.put("name", "aaa04"); - Object[] params = new Object[] { user, - cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), - setParams, whereParams }; try { + String grantingTicketURL = cas.getGrantingTicketURL(user); + Object execute = addPac(user, grantingTicketURL, + "aaa05", BasePacType.PAC_SW, "176.9.242.77", + 1024, 8, 0); + assertEquals(count + 1, getPacsCount()); + validateAddedPac(execute, BasePacType.PAC_SW, 1024, 8, -1); + setPacAdminPassword(user, grantingTicketURL, "aaa05", "test123"); + } catch (XmlRpcException e) { + fail(e.getMessage()); + } + } + + @Test + public void testUpdateDW() { + String user = "ad"; + try { + String grantingTicketURL = cas.getGrantingTicketURL(user); + Map setParams = new HashMap(); + Map components = new HashMap(); + setParams.put("basepac", BasePacType.PAC_WEB); + setParams.put("components", components); +// components.put("QUOTA", "2048"); // does not yet work + Map whereParams = new HashMap(); + whereParams.put("name", "aaa04"); + Object[] params = new Object[] { user, + cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), + setParams, whereParams }; Object execute = client.execute(MODULE + ".update", params); assertNotNull(execute); params = new Object[] { user, @@ -132,13 +106,54 @@ public class PacMigrationTest { @SuppressWarnings("unchecked") Map compMap = (Map) compMapObj; assertEquals("1024", compMap.get("QUOTA")); -// assertEquals("2048", compMap.get("QUOTA")); // does not work till now +// assertEquals("2048", compMap.get("QUOTA")); // does not yet work assertEquals("5", compMap.get("TRAFFIC")); } catch (XmlRpcException e) { fail(e.getMessage()); } } + @Test + public void testUpdateSW() { + String user = "ad"; + try { + String grantingTicketURL = cas.getGrantingTicketURL(user); + Map setParams = new HashMap(); + Map components = new HashMap(); + setParams.put("basepac", BasePacType.PAC_WEB); + setParams.put("components", components); +// components.put("QUOTA", "2048"); // does not yet work + Map whereParams = new HashMap(); + whereParams.put("name", "aaa05"); + Object[] params = new Object[] { user, + cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), + setParams, whereParams }; + Object execute = client.execute(MODULE + ".update", params); + assertNotNull(execute); + params = new Object[] { user, + cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), + whereParams }; + execute = client.execute(MODULE + ".search", params); + assertNotNull(execute); + assertTrue(execute instanceof Object[]); + Object[] untypedResultArray = (Object[]) execute; + assertEquals(1, untypedResultArray.length); + assertTrue(untypedResultArray[0] instanceof Map); + @SuppressWarnings("unchecked") + Map pacResultMap = (Map) untypedResultArray[0]; + assertEquals(BasePacType.PAC_WEB, pacResultMap.get("basepac")); + Object compMapObj = pacResultMap.get("components"); + assertTrue(compMapObj instanceof Map); + @SuppressWarnings("unchecked") + Map compMap = (Map) compMapObj; + assertEquals("1024", compMap.get("QUOTA")); +// assertEquals("2048", compMap.get("QUOTA")); // does not yet work + assertEquals("10", compMap.get("TRAFFIC")); + } catch (XmlRpcException e) { + fail(e.getMessage()); + } + } + private int getPacsCount() { int count = 0; String user = "hsh00-aaa"; @@ -158,4 +173,68 @@ public class PacMigrationTest { return count; } + private Object addPac(String user, String grantingTicketURL, + String pacName, String basepacName, String inetAddr, + int quota, int traffic, int daemons) + throws XmlRpcException { + Map setParams = new HashMap(); + setParams.put("name", pacName); + setParams.put("hive", "h99"); + setParams.put("customer", config.getProperty("accountprefix.customer") + "-aaa"); + setParams.put("basepac", basepacName); + setParams.put("curinetaddr", inetAddr); + HashMap components = new HashMap(); + components.put("QUOTA", Integer.toString(quota)); + components.put("TRAFFIC", Integer.toString(traffic)); + components.put("DAEMON", Integer.toString(daemons)); + setParams.put("components", components); + Object[] params = new Object[] { user, + cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), + setParams }; + Object execute = client.execute(MODULE + ".add", params); + assertTrue(execute instanceof Map); + Map whereParams = new HashMap(); + whereParams.put("name", pacName); + params = new Object[] { user, + cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), + whereParams }; + execute = client.execute(MODULE + ".search", params); + return execute; + } + + private void validateAddedPac(Object execute, String basepacName, int quota, int traffic, int daemons) { + assertNotNull(execute); + assertTrue(execute instanceof Object[]); + Object[] untypedResultArray = (Object[]) execute; + assertEquals(1, untypedResultArray.length); + assertTrue(untypedResultArray[0] instanceof Map); + @SuppressWarnings("unchecked") + Map pacResultMap = (Map) untypedResultArray[0]; + assertEquals(basepacName, pacResultMap.get("basepac")); + Object compMapObj = pacResultMap.get("components"); + assertTrue(compMapObj instanceof Map); + @SuppressWarnings("unchecked") + Map compMap = (Map) compMapObj; + assertEquals(Integer.toString(quota), compMap.get("QUOTA")); + assertEquals(Integer.toString(traffic), compMap.get("TRAFFIC")); + if (daemons >= 0) { + assertEquals(Integer.toString(daemons), compMap.get("DAEMON")); + } else { + assertTrue(compMap.get("DAEMON") == null); + } + } + + private void setPacAdminPassword(String user, String grantingTicketURL, + String pacName, String password) + throws XmlRpcException { + HashMap whereParams = new HashMap(); + HashMap setParams = new HashMap(); + whereParams.put("name", pacName); + setParams.put("password", password); + Object[] params = new Object[] { user, + cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.getBackendURL()), + setParams, whereParams }; + client.execute("user.update", params); + } + }