http://git-wip-us.apache.org/repos/asf/stratos/blob/395be450/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationBurstingTest.java ---------------------------------------------------------------------- diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationBurstingTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationBurstingTest.java deleted file mode 100644 index 70f79f2..0000000 --- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationBurstingTest.java +++ /dev/null @@ -1,227 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.stratos.integration.tests.application; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.stratos.common.beans.application.ApplicationBean; -import org.apache.stratos.common.beans.cartridge.CartridgeGroupBean; -import org.apache.stratos.common.beans.policy.deployment.ApplicationPolicyBean; -import org.apache.stratos.integration.tests.RestConstants; -import org.apache.stratos.integration.tests.StratosTestServerManager; -import org.apache.stratos.integration.tests.TopologyHandler; -import org.apache.stratos.messaging.domain.application.ApplicationStatus; -import org.testng.annotations.Test; - -import static junit.framework.Assert.*; - -/** - * This will handle the application bursting test cases - */ -public class ApplicationBurstingTest extends StratosTestServerManager { - private static final Log log = LogFactory.getLog(SampleApplicationsTest.class); - private static final String RESOURCES_PATH = "/application-bursting-test"; - - - @Test - public void testApplicationBusting() { - try { - log.info("-------------------------------Started application Bursting test case-------------------------------"); - TopologyHandler topologyHandler = TopologyHandler.getInstance(); - String autoscalingPolicyId = "autoscaling-policy-application-bursting-test"; - - boolean addedScalingPolicy = restClient.addEntity(RESOURCES_PATH + RestConstants.AUTOSCALING_POLICIES_PATH - + "/" + autoscalingPolicyId + ".json", - RestConstants.AUTOSCALING_POLICIES, RestConstants.AUTOSCALING_POLICIES_NAME); - assertTrue(addedScalingPolicy); - - boolean addedC1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "esb-application-bursting-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC1); - - boolean addedC2 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "php-application-bursting-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC2); - - boolean addedC3 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "tomcat-application-bursting-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC3); - - boolean addedG1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGE_GROUPS_PATH + - "/" + "esb-php-group-application-bursting-test.json", RestConstants.CARTRIDGE_GROUPS, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(addedG1); - - CartridgeGroupBean beanG1 = (CartridgeGroupBean) restClient. - getEntity(RestConstants.CARTRIDGE_GROUPS, "esb-php-group-application-bursting-test", - CartridgeGroupBean.class, RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(beanG1.getName(), "esb-php-group-application-bursting-test"); - - boolean addedN1 = restClient.addEntity(RESOURCES_PATH + RestConstants.NETWORK_PARTITIONS_PATH + "/" + - "network-partition-application-bursting-test-1.json", - RestConstants.NETWORK_PARTITIONS, RestConstants.NETWORK_PARTITIONS_NAME); - assertTrue(addedN1); - - boolean addedN2 = restClient.addEntity(RESOURCES_PATH + RestConstants.NETWORK_PARTITIONS_PATH + "/" + - "network-partition-application-bursting-test-2.json", - RestConstants.NETWORK_PARTITIONS, RestConstants.NETWORK_PARTITIONS_NAME); - assertTrue(addedN2); - - boolean addedDep = restClient.addEntity(RESOURCES_PATH + RestConstants.DEPLOYMENT_POLICIES_PATH + "/" + - "deployment-policy-application-bursting-test.json", - RestConstants.DEPLOYMENT_POLICIES, RestConstants.DEPLOYMENT_POLICIES_NAME); - assertTrue(addedDep); - - boolean added = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATIONS_PATH + "/" + - "app-bursting-single-cartriddge-group.json", RestConstants.APPLICATIONS, - RestConstants.APPLICATIONS_NAME); - assertTrue(added); - - ApplicationBean bean = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "application-bursting-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertEquals(bean.getApplicationId(), "application-bursting-test"); - - boolean addAppPolicy = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATION_POLICIES_PATH + "/" + - "application-policy-application-bursting-test.json", RestConstants.APPLICATION_POLICIES, - RestConstants.APPLICATION_POLICIES_NAME); - assertTrue(addAppPolicy); - - ApplicationPolicyBean policyBean = (ApplicationPolicyBean) restClient.getEntity( - RestConstants.APPLICATION_POLICIES, - "application-policy-application-bursting-test", ApplicationPolicyBean.class, - RestConstants.APPLICATION_POLICIES_NAME); - - //deploy the application - String resourcePath = RestConstants.APPLICATIONS + "/" + "application-bursting-test" + - RestConstants.APPLICATIONS_DEPLOY + "/" + "application-policy-application-bursting-test"; - boolean deployed = restClient.deployEntity(resourcePath, - RestConstants.APPLICATIONS_NAME); - assertTrue(deployed); - - //Application active handling - topologyHandler.assertApplicationStatus(bean.getApplicationId(), - ApplicationStatus.Active); - - //Group active handling - topologyHandler.assertGroupActivation(bean.getApplicationId()); - - //Cluster active handling - topologyHandler.assertClusterActivation(bean.getApplicationId()); - - boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "esb-php-group-application-bursting-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertFalse(removedGroup); - - boolean removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertFalse(removedAuto); - - boolean removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-application-bursting-test-1", - RestConstants.NETWORK_PARTITIONS_NAME); - //Trying to remove the used network partition - assertFalse(removedNet); - - boolean removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-application-bursting-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertFalse(removedDep); - - //Un-deploying the application - String resourcePathUndeploy = RestConstants.APPLICATIONS + "/" + "application-bursting-test" + - RestConstants.APPLICATIONS_UNDEPLOY; - - boolean unDeployed = restClient.undeployEntity(resourcePathUndeploy, - RestConstants.APPLICATIONS_NAME); - assertTrue(unDeployed); - - boolean undeploy = topologyHandler.assertApplicationUndeploy("application-bursting-test"); - if (!undeploy) { - //Need to forcefully undeploy the application - log.info("Force undeployment is going to start for the [application] " + "application-bursting-test"); - - restClient.undeployEntity(RestConstants.APPLICATIONS + "/" + "application-bursting-test" + - RestConstants.APPLICATIONS_UNDEPLOY + "?force=true", RestConstants.APPLICATIONS); - - boolean forceUndeployed = topologyHandler.assertApplicationUndeploy("application-bursting-test"); - assertEquals(String.format("Forceful undeployment failed for the application %s", - "application-bursting-test"), forceUndeployed); - - } - - boolean removed = restClient.removeEntity(RestConstants.APPLICATIONS, "application-bursting-test", - RestConstants.APPLICATIONS_NAME); - assertTrue(removed); - - ApplicationBean beanRemoved = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "application-bursting-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertNull(beanRemoved); - - removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "esb-php-group-application-bursting-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(removedGroup); - - boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "esb-application-bursting-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC1); - - boolean removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "php-application-bursting-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC2); - - boolean removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "tomcat-application-bursting-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC3); - - removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertTrue(removedAuto); - - removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-application-bursting-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertTrue(removedDep); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-application-bursting-test-1", RestConstants.NETWORK_PARTITIONS_NAME); - assertFalse(removedNet); - - boolean removedN2 = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-application-bursting-test-2", RestConstants.NETWORK_PARTITIONS_NAME); - assertFalse(removedN2); - - boolean removeAppPolicy = restClient.removeEntity(RestConstants.APPLICATION_POLICIES, - "application-policy-application-bursting-test", RestConstants.APPLICATION_POLICIES_NAME); - assertTrue(removeAppPolicy); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-application-bursting-test-1", RestConstants.NETWORK_PARTITIONS_NAME); - assertTrue(removedNet); - - removedN2 = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-application-bursting-test-2", RestConstants.NETWORK_PARTITIONS_NAME); - assertTrue(removedN2); - - log.info("-------------------------------Ended application bursting test case-------------------------------"); - - } catch (Exception e) { - log.error("An error occurred while handling application bursting", e); - assertTrue("An error occurred while handling application bursting", false); - } - } -} -
http://git-wip-us.apache.org/repos/asf/stratos/blob/395be450/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationUpdateTest.java ---------------------------------------------------------------------- diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationUpdateTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationUpdateTest.java deleted file mode 100644 index f3f1b91..0000000 --- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/ApplicationUpdateTest.java +++ /dev/null @@ -1,243 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.stratos.integration.tests.application; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.stratos.common.beans.application.ApplicationBean; -import org.apache.stratos.common.beans.cartridge.CartridgeGroupBean; -import org.apache.stratos.common.beans.policy.deployment.ApplicationPolicyBean; -import org.apache.stratos.integration.tests.RestConstants; -import org.apache.stratos.integration.tests.StratosTestServerManager; -import org.apache.stratos.integration.tests.TopologyHandler; -import org.apache.stratos.messaging.domain.application.ApplicationStatus; -import org.testng.annotations.Test; - -import static junit.framework.Assert.assertEquals; -import static junit.framework.Assert.assertTrue; - -/** - * Sample application tests with application add, . - */ -public class ApplicationUpdateTest extends StratosTestServerManager { - private static final Log log = LogFactory.getLog(ApplicationUpdateTest.class); - private static final String RESOURCES_PATH = "/application-update-test"; - - @Test - public void testDeployApplication() { - try { - log.info("-------------------------Started application runtime update test case-------------------------"); - TopologyHandler topologyHandler = TopologyHandler.getInstance(); - String autoscalingPolicyId = "autoscaling-policy-application-update-test"; - - boolean addedScalingPolicy = restClient.addEntity(RESOURCES_PATH + RestConstants.AUTOSCALING_POLICIES_PATH - + "/" + autoscalingPolicyId + ".json", - RestConstants.AUTOSCALING_POLICIES, RestConstants.AUTOSCALING_POLICIES_NAME); - assertEquals(addedScalingPolicy, true); - - boolean addedC1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c1-application-update-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC1, true); - - boolean addedC2 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c2-application-update-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC2, true); - - boolean addedC3 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c3-application-update-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC3, true); - - boolean addedG1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGE_GROUPS_PATH + - "/" + "cartrdige-nested-application-update-test.json", RestConstants.CARTRIDGE_GROUPS, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(addedG1, true); - - CartridgeGroupBean beanG1 = (CartridgeGroupBean) restClient. - getEntity(RestConstants.CARTRIDGE_GROUPS, "G1-application-update-test", - CartridgeGroupBean.class, RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(beanG1.getName(), "G1-application-update-test"); - - boolean addedN1 = restClient.addEntity(RESOURCES_PATH + RestConstants.NETWORK_PARTITIONS_PATH + "/" + - "network-partition-application-update-test-1.json", - RestConstants.NETWORK_PARTITIONS, RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(addedN1, true); - - boolean addedN2 = restClient.addEntity(RESOURCES_PATH + RestConstants.NETWORK_PARTITIONS_PATH + "/" + - "network-partition-application-update-test-2.json", - RestConstants.NETWORK_PARTITIONS, RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(addedN2, true); - - boolean addedDep = restClient.addEntity(RESOURCES_PATH + RestConstants.DEPLOYMENT_POLICIES_PATH + "/" + - "deployment-policy-application-update-test.json", - RestConstants.DEPLOYMENT_POLICIES, RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(addedDep, true); - - boolean added = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATIONS_PATH + "/" + - "g-sc-G123-1-application-update-test.json", RestConstants.APPLICATIONS, - RestConstants.APPLICATIONS_NAME); - assertEquals(added, true); - - ApplicationBean bean = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "g-sc-G123-1-application-update-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertEquals(bean.getApplicationId(), "g-sc-G123-1-application-update-test"); - - boolean addAppPolicy = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATION_POLICIES_PATH + "/" + - "application-policy-application-update-test.json", RestConstants.APPLICATION_POLICIES, - RestConstants.APPLICATION_POLICIES_NAME); - assertEquals(addAppPolicy, true); - - ApplicationPolicyBean policyBean = (ApplicationPolicyBean) restClient.getEntity( - RestConstants.APPLICATION_POLICIES, - "application-policy-application-update-test", ApplicationPolicyBean.class, - RestConstants.APPLICATION_POLICIES_NAME); - - //deploy the application - String resourcePath = RestConstants.APPLICATIONS + "/" + "g-sc-G123-1-application-update-test" + - RestConstants.APPLICATIONS_DEPLOY + "/" + "application-policy-application-update-test"; - boolean deployed = restClient.deployEntity(resourcePath, - RestConstants.APPLICATIONS_NAME); - assertEquals(deployed, true); - - //Application active handling - topologyHandler.assertApplicationStatus(bean.getApplicationId(), - ApplicationStatus.Active); - - //Group active handling - topologyHandler.assertGroupActivation(bean.getApplicationId()); - - //Cluster active handling - topologyHandler.assertClusterActivation(bean.getApplicationId()); - - //Updating application - boolean updated = restClient.updateEntity(RESOURCES_PATH + RestConstants.APPLICATIONS_PATH + "/" + - "g-sc-G123-1-application-update-test-v1.json", RestConstants.APPLICATIONS, - RestConstants.APPLICATIONS_NAME); - assertEquals(updated, true); - - topologyHandler.assertGroupInstanceCount(bean.getApplicationId(), "group3-application-update-test", 2); - - topologyHandler.assertClusterMinMemberCount(bean.getApplicationId(), 2); - - ApplicationBean updatedBean = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "g-sc-G123-1-application-update-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertEquals(updatedBean.getApplicationId(), "g-sc-G123-1-application-update-test"); - - boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1-application-update-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(removedGroup, false); - - boolean removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertEquals(removedAuto, false); - - boolean removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-application-update-test-1", - RestConstants.NETWORK_PARTITIONS_NAME); - //Trying to remove the used network partition - assertEquals(removedNet, false); - - boolean removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-application-update-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(removedDep, false); - - //Un-deploying the application - String resourcePathUndeploy = RestConstants.APPLICATIONS + "/" + "g-sc-G123-1-application-update-test" + - RestConstants.APPLICATIONS_UNDEPLOY; - - boolean unDeployed = restClient.undeployEntity(resourcePathUndeploy, - RestConstants.APPLICATIONS_NAME); - assertEquals(unDeployed, true); - - boolean undeploy = topologyHandler.assertApplicationUndeploy("g-sc-G123-1-application-update-test"); - if (!undeploy) { - //Need to forcefully undeploy the application - log.info("Force undeployment is going to start for the [application] " + "g-sc-G123-1-application-update-test"); - - restClient.undeployEntity(RestConstants.APPLICATIONS + "/" + "g-sc-G123-1-application-update-test" + - RestConstants.APPLICATIONS_UNDEPLOY + "?force=true", RestConstants.APPLICATIONS); - - boolean forceUndeployed = topologyHandler.assertApplicationUndeploy("g-sc-G123-1-application-update-test"); - assertEquals(String.format("Forceful undeployment failed for the application %s", - "g-sc-G123-1-application-update-test"), forceUndeployed, true); - - } - - boolean removed = restClient.removeEntity(RestConstants.APPLICATIONS, "g-sc-G123-1-application-update-test", - RestConstants.APPLICATIONS_NAME); - assertEquals(removed, true); - - ApplicationBean beanRemoved = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "g-sc-G123-1-application-update-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertEquals(beanRemoved, null); - - removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1-application-update-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(removedGroup, true); - - boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c1-application-update-test", - RestConstants.CARTRIDGES_NAME); - assertEquals(removedC1, true); - - boolean removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "c2-application-update-test", - RestConstants.CARTRIDGES_NAME); - assertEquals(removedC2, true); - - boolean removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "c3-application-update-test", - RestConstants.CARTRIDGES_NAME); - assertEquals(removedC3, true); - - removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertEquals(removedAuto, true); - - removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-application-update-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(removedDep, true); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-application-update-test-1", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedNet, false); - - boolean removedN2 = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-application-update-test-2", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedN2, false); - - boolean removeAppPolicy = restClient.removeEntity(RestConstants.APPLICATION_POLICIES, - "application-policy-application-update-test", RestConstants.APPLICATION_POLICIES_NAME); - assertEquals(removeAppPolicy, true); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-application-update-test-1", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedNet, true); - - removedN2 = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-application-update-test-2", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedN2, true); - - log.info("-------------------------Ended application runtime update test case-------------------------"); - - } catch (Exception e) { - log.error("An error occurred while handling application deployment/undeployment and update", e); - assertTrue("An error occurred while handling application deployment/undeployment and update", false); - } - } - - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/395be450/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/GroupStartupOrderTest.java ---------------------------------------------------------------------- diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/GroupStartupOrderTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/GroupStartupOrderTest.java deleted file mode 100644 index 4b68695..0000000 --- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/GroupStartupOrderTest.java +++ /dev/null @@ -1,362 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.stratos.integration.tests.application; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.stratos.common.beans.application.ApplicationBean; -import org.apache.stratos.integration.tests.RestConstants; -import org.apache.stratos.integration.tests.StratosTestServerManager; -import org.apache.stratos.integration.tests.TopologyHandler; -import org.apache.stratos.messaging.domain.application.ApplicationStatus; -import org.testng.annotations.Test; - -import java.util.Map; - -import static junit.framework.Assert.*; - -/** - * Handling the startup order of the group - */ -public class GroupStartupOrderTest extends StratosTestServerManager { - private static final Log log = LogFactory.getLog(SampleApplicationsTest.class); - private static final String RESOURCES_PATH = "/group-startup-order-test"; - private static final int GROUP_ACTIVE_TIMEOUT = 300000; - private static final int NODES_START_PARALLEL_TIMEOUT = 30000; - - - @Test - public void testTerminationBehavior() { - try { - log.info("-------------------------------Started application startup order test case-------------------------------"); - - String autoscalingPolicyId = "autoscaling-policy-group-startup-order-test"; - TopologyHandler topologyHandler = TopologyHandler.getInstance(); - - boolean addedScalingPolicy = restClient.addEntity(RESOURCES_PATH + RestConstants.AUTOSCALING_POLICIES_PATH - + "/" + autoscalingPolicyId + ".json", - RestConstants.AUTOSCALING_POLICIES, RestConstants.AUTOSCALING_POLICIES_NAME); - assertTrue(addedScalingPolicy); - - boolean addedC1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "esb-group-startup-order-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC1); - - boolean addedC2 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "php-group-startup-order-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC2); - - boolean addedC3 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "stratos-lb-group-startup-order-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC3); - - boolean addedC5 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "tomcat1-group-startup-order-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC5); - - boolean addedC6 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "tomcat2-group-startup-order-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC6); - - boolean addedC7 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "tomcat3-group-startup-order-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC7); - - boolean addedC8 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "tomcat-group-startup-order-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC8); - - boolean addedG2 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGE_GROUPS_PATH + - "/" + "group6-group-startup-order-test.json", RestConstants.CARTRIDGE_GROUPS, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(addedG2); - - boolean addedG3 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGE_GROUPS_PATH + - "/" + "group8-group-startup-order-test.json", RestConstants.CARTRIDGE_GROUPS, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(addedG3); - - boolean addedN1 = restClient.addEntity(RESOURCES_PATH + RestConstants.NETWORK_PARTITIONS_PATH + "/" + - "network-partition-group-startup-order-test-1.json", - RestConstants.NETWORK_PARTITIONS, RestConstants.NETWORK_PARTITIONS_NAME); - assertTrue(addedN1); - - boolean addedDep = restClient.addEntity(RESOURCES_PATH + RestConstants.DEPLOYMENT_POLICIES_PATH + "/" + - "deployment-policy-group-startup-order-test.json", - RestConstants.DEPLOYMENT_POLICIES, RestConstants.DEPLOYMENT_POLICIES_NAME); - assertTrue(addedDep); - - boolean added = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATIONS_PATH + "/" + - "group-startup-order-test.json", RestConstants.APPLICATIONS, - RestConstants.APPLICATIONS_NAME); - assertTrue(added); - - ApplicationBean bean = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "group-startup-order-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertEquals(bean.getApplicationId(), "group-startup-order-test"); - - boolean addAppPolicy = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATION_POLICIES_PATH + "/" + - "application-policy-group-startup-order-test.json", RestConstants.APPLICATION_POLICIES, - RestConstants.APPLICATION_POLICIES_NAME); - assertTrue(addAppPolicy); - - //deploy the application - String resourcePath = RestConstants.APPLICATIONS + "/" + "group-startup-order-test" + - RestConstants.APPLICATIONS_DEPLOY + "/" + "application-policy-group-startup-order-test"; - boolean deployed = restClient.deployEntity(resourcePath, - RestConstants.APPLICATIONS_NAME); - assertTrue(deployed); - - String group6 = topologyHandler.generateId(bean.getApplicationId(), - "my-group6-group-startup-order-test", bean.getApplicationId() + "-1"); - - String group8 = topologyHandler.generateId(bean.getApplicationId(), - "my-group8-group-startup-order-test", bean.getApplicationId() + "-1"); - - String lb = topologyHandler. - getClusterIdFromAlias(bean.getApplicationId(), - "my-stratos-lb-group-startup-order-test"); - - String tomcat = topologyHandler. - getClusterIdFromAlias(bean.getApplicationId(), - "my-tomcat-group-startup-order-test"); - - assertCreationOfNodes(lb, tomcat); - - assertCreationOfNodes(tomcat, group6); - - assertCreationOfNodesInParallel(group6, group8); - - assertCreationOfNodes(tomcat, group8); - - String group7 = topologyHandler.generateId(bean.getApplicationId(), - "my-group7-group-startup-order-test", bean.getApplicationId() + "-1"); - - String groupTom2 = topologyHandler.generateId(bean.getApplicationId(), - "my-group6-group-tom2-group-startup-order-test", bean.getApplicationId() + "-1"); - - assertCreationOfNodesInParallel(group7, groupTom2); - - String group7Tomcat = topologyHandler. - getClusterIdFromAlias(bean.getApplicationId(), - "my-group7-tomcat-group-startup-order-test"); - - String group7Tomcat1 = topologyHandler. - getClusterIdFromAlias(bean.getApplicationId(), - "my-group7-tomcat1-group-startup-order-test"); - - assertCreationOfNodes(group7Tomcat, group7Tomcat1); - - String groupTom2Tomcat2 = topologyHandler. - getClusterIdFromAlias(bean.getApplicationId(), - "my-group-tom2-tomcat2-group-startup-order-test"); - - String groupTom2Tomcat3 = topologyHandler. - getClusterIdFromAlias(bean.getApplicationId(), - "my-group-tom2-tomcat3-group-startup-order-test"); - - assertCreationOfNodes(groupTom2Tomcat2, groupTom2Tomcat3); - - String group8Tomcat2 = topologyHandler. - getClusterIdFromAlias(bean.getApplicationId(), - "my-tomcat2-group8-group-startup-order-test"); - - String group8Tomcat = topologyHandler. - getClusterIdFromAlias(bean.getApplicationId(), - "my-tomcat-group8-group-startup-order-test"); - - assertCreationOfNodesInParallel(group8Tomcat2, group8Tomcat); - - //Application active handling - topologyHandler.assertApplicationStatus(bean.getApplicationId(), - ApplicationStatus.Active); - - //Group active handling - topologyHandler.assertGroupActivation(bean.getApplicationId()); - - //Cluster active handling - topologyHandler.assertClusterActivation(bean.getApplicationId()); - - boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, - "group6-group-startup-order-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertFalse(removedGroup); - - removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, - "group8-group-startup-order-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertFalse(removedGroup); - - boolean removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertFalse(removedAuto); - - boolean removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-group-startup-order-test-1", - RestConstants.NETWORK_PARTITIONS_NAME); - //Trying to remove the used network partition - assertFalse(removedNet); - - boolean removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-group-startup-order-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertFalse(removedDep); - - //Un-deploying the application - String resourcePathUndeploy = RestConstants.APPLICATIONS + "/" + "group-startup-order-test" + - RestConstants.APPLICATIONS_UNDEPLOY; - - boolean unDeployed = restClient.undeployEntity(resourcePathUndeploy, - RestConstants.APPLICATIONS_NAME); - assertTrue(unDeployed); - - boolean undeploy = topologyHandler.assertApplicationUndeploy("group-startup-order-test"); - if (!undeploy) { - //Need to forcefully undeploy the application - log.info("Force undeployment is going to start for the [application] " + "group-startup-order-test"); - - restClient.undeployEntity(RestConstants.APPLICATIONS + "/" + "group-startup-order-test" + - RestConstants.APPLICATIONS_UNDEPLOY + "?force=true", RestConstants.APPLICATIONS); - - boolean forceUndeployed = topologyHandler.assertApplicationUndeploy("group-startup-order-test"); - assertTrue(String.format("Forceful undeployment failed for the application %s", - "group-startup-order-test"), forceUndeployed); - - } - - boolean removed = restClient.removeEntity(RestConstants.APPLICATIONS, "group-startup-order-test", - RestConstants.APPLICATIONS_NAME); - assertTrue(removed); - - ApplicationBean beanRemoved = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "group-startup-order-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertNull(beanRemoved); - - removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, - "group6-group-startup-order-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(removedGroup); - - removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, - "group8-group-startup-order-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(removedGroup); - - boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "stratos-lb-group-startup-order-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC1); - - boolean removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "tomcat-group-startup-order-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC2); - - boolean removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "tomcat1-group-startup-order-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC3); - - boolean removedC4 = restClient.removeEntity(RestConstants.CARTRIDGES, "tomcat2-group-startup-order-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC4); - - boolean removedC5 = restClient.removeEntity(RestConstants.CARTRIDGES, "tomcat3-group-startup-order-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC5); - - removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertTrue(removedAuto); - - removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-group-startup-order-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertTrue(removedDep); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-group-startup-order-test-1", RestConstants.NETWORK_PARTITIONS_NAME); - assertFalse(removedNet); - - boolean removeAppPolicy = restClient.removeEntity(RestConstants.APPLICATION_POLICIES, - "application-policy-group-startup-order-test", RestConstants.APPLICATION_POLICIES_NAME); - assertTrue(removeAppPolicy); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-group-startup-order-test-1", RestConstants.NETWORK_PARTITIONS_NAME); - assertTrue(removedNet); - - log.info("-------------------------------Ended application termination behavior test case-------------------------------"); - - } catch (Exception e) { - log.error("An error occurred while handling application termination behavior", e); - assertTrue("An error occurred while handling application termination behavior", false); - } - } - - private void assertCreationOfNodes(String firstNodeId, String secondNodeId) { - //group1 started first, then cluster started later - long startTime = System.currentTimeMillis(); - Map<String, Long> activeMembers = TopologyHandler.getInstance().getActivateddMembers(); - Map<String, Long> createdMembers = TopologyHandler.getInstance().getCreatedMembers(); - //Active member should be available at the time cluster is started to create. - while (!activeMembers.containsKey(firstNodeId)) { - try { - Thread.sleep(1000); - } catch (InterruptedException e) { - } - activeMembers = TopologyHandler.getInstance().getActivateddMembers(); - if ((System.currentTimeMillis() - startTime) > GROUP_ACTIVE_TIMEOUT) { - break; - } - } - assertTrue(activeMembers.containsKey(firstNodeId)); - - while (!createdMembers.containsKey(secondNodeId)) { - try { - Thread.sleep(1000); - } catch (InterruptedException e) { - } - createdMembers = TopologyHandler.getInstance().getCreatedMembers(); - if ((System.currentTimeMillis() - startTime) > GROUP_ACTIVE_TIMEOUT) { - break; - } - } - - assertTrue(createdMembers.containsKey(secondNodeId)); - - assertTrue(createdMembers.get(secondNodeId) > activeMembers.get(firstNodeId)); - } - - private void assertCreationOfNodesInParallel(String firstNodeId, String secondNodeId) { - //group1 started first, then cluster started later - long startTime = System.currentTimeMillis(); - Map<String, Long> createdMembers = TopologyHandler.getInstance().getCreatedMembers(); - //Active member should be available at the time cluster is started to create. - - while (!(createdMembers.containsKey(firstNodeId) && createdMembers.containsKey(firstNodeId))) { - try { - Thread.sleep(1000); - } catch (InterruptedException e) { - } - createdMembers = TopologyHandler.getInstance().getCreatedMembers(); - if ((System.currentTimeMillis() - startTime) > NODES_START_PARALLEL_TIMEOUT) { - break; - } - } - assertTrue(createdMembers.containsKey(firstNodeId)); - assertTrue(createdMembers.containsKey(firstNodeId)); - - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/395be450/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/GroupTerminationBehaviorTest.java ---------------------------------------------------------------------- diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/GroupTerminationBehaviorTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/GroupTerminationBehaviorTest.java deleted file mode 100644 index 6ea7150..0000000 --- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/GroupTerminationBehaviorTest.java +++ /dev/null @@ -1,428 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.stratos.integration.tests.application; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.stratos.common.beans.application.ApplicationBean; -import org.apache.stratos.common.beans.cartridge.CartridgeGroupBean; -import org.apache.stratos.common.beans.policy.deployment.ApplicationPolicyBean; -import org.apache.stratos.integration.tests.RestConstants; -import org.apache.stratos.integration.tests.StratosTestServerManager; -import org.apache.stratos.integration.tests.TopologyHandler; -import org.apache.stratos.messaging.domain.application.ApplicationStatus; -import org.apache.stratos.messaging.domain.topology.Member; -import org.testng.annotations.Test; - -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -import static junit.framework.Assert.*; - -/** - * Handling the termination behavior of the group - */ -public class GroupTerminationBehaviorTest extends StratosTestServerManager { - private static final Log log = LogFactory.getLog(GroupTerminationBehaviorTest.class); - private static final String RESOURCES_PATH = "/group-termination-behavior-test"; - private static final int GROUP_INACTIVE_TIMEOUT = 180000; - - @Test - public void testTerminationBehavior() { - try { - log.info( - "-------------------------------Started application termination behavior test case-------------------------------"); - - String autoscalingPolicyId = "autoscaling-policy-group-termination-behavior-test"; - TopologyHandler topologyHandler = TopologyHandler.getInstance(); - - boolean addedScalingPolicy = restClient.addEntity(RESOURCES_PATH + RestConstants.AUTOSCALING_POLICIES_PATH - + "/" + autoscalingPolicyId + ".json", - RestConstants.AUTOSCALING_POLICIES, RestConstants.AUTOSCALING_POLICIES_NAME); - assertTrue(addedScalingPolicy); - - boolean addedC1 = restClient.addEntity( - RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c1-group-termination-behavior-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC1); - - boolean addedC2 = restClient.addEntity( - RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c2-group-termination-behavior-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC2); - - boolean addedC3 = restClient.addEntity( - RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c3-group-termination-behavior-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC3); - - boolean addedC4 = restClient.addEntity( - RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c4-group-termination-behavior-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(addedC4); - - boolean addedG1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGE_GROUPS_PATH + - "/" + "cartridge-groups-group-termination-behavior-test.json", - RestConstants.CARTRIDGE_GROUPS, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(addedG1); - - CartridgeGroupBean beanG1 = (CartridgeGroupBean) restClient. - getEntity(RestConstants.CARTRIDGE_GROUPS, "g-sc-G4-group-termination-behavior-test", - CartridgeGroupBean.class, RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(beanG1.getName(), "g-sc-G4-group-termination-behavior-test"); - - boolean addedN1 = restClient.addEntity(RESOURCES_PATH + RestConstants.NETWORK_PARTITIONS_PATH + "/" + - "network-partition-group-termination-behavior-test-1.json", - RestConstants.NETWORK_PARTITIONS, RestConstants.NETWORK_PARTITIONS_NAME); - assertTrue(addedN1); - - boolean addedDep = restClient.addEntity(RESOURCES_PATH + RestConstants.DEPLOYMENT_POLICIES_PATH + "/" + - "deployment-policy-group-termination-behavior-test.json", - RestConstants.DEPLOYMENT_POLICIES, RestConstants.DEPLOYMENT_POLICIES_NAME); - assertTrue(addedDep); - - boolean added = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATIONS_PATH + "/" + - "group-termination-behavior-test.json", RestConstants.APPLICATIONS, - RestConstants.APPLICATIONS_NAME); - assertTrue(added); - - ApplicationBean bean = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "group-termination-behavior-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertEquals(bean.getApplicationId(), "group-termination-behavior-test"); - - boolean addAppPolicy = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATION_POLICIES_PATH + "/" + - "application-policy-group-termination-behavior-test.json", - RestConstants.APPLICATION_POLICIES, - RestConstants.APPLICATION_POLICIES_NAME); - assertTrue(addAppPolicy); - - ApplicationPolicyBean policyBean = (ApplicationPolicyBean) restClient.getEntity( - RestConstants.APPLICATION_POLICIES, - "application-policy-group-termination-behavior-test", ApplicationPolicyBean.class, - RestConstants.APPLICATION_POLICIES_NAME); - - //deploy the application - String resourcePath = RestConstants.APPLICATIONS + "/" + "group-termination-behavior-test" + - RestConstants.APPLICATIONS_DEPLOY + "/" + "application-policy-group-termination-behavior-test"; - boolean deployed = restClient.deployEntity(resourcePath, - RestConstants.APPLICATIONS_NAME); - assertTrue(deployed); - - String groupId = topologyHandler.generateId(bean.getApplicationId(), - "g-G1-1x0-group-termination-behavior-test", bean.getApplicationId() + "-1"); - - String clusterIdC3 = topologyHandler. - getClusterIdFromAlias(bean.getApplicationId(), - "c3-1x0-group-termination-behavior-test"); - - String clusterIdC4 = topologyHandler. - getClusterIdFromAlias(bean.getApplicationId(), - "c4-1x0-group-termination-behavior-test"); - - String clusterIdC2 = topologyHandler. - getClusterIdFromAlias(bean.getApplicationId(), - "c2-1x0-group-termination-behavior-test"); - - assertCreationOfNodes(groupId, clusterIdC2); - - assertCreationOfNodes(clusterIdC3, clusterIdC4); - - //Application active handling - topologyHandler.assertApplicationStatus(bean.getApplicationId(), - ApplicationStatus.Active); - - //Group active handling - topologyHandler.assertGroupActivation(bean.getApplicationId()); - - //Cluster active handling - topologyHandler.assertClusterActivation(bean.getApplicationId()); - - Map<String, Member> memberMap = TopologyHandler.getInstance().getMembersForCluster - ("c3-group-termination-behavior-test", bean.getApplicationId()); - - //Terminate members in the cluster - for (Map.Entry<String, Member> entry : memberMap.entrySet()) { - String memberId = entry.getValue().getMemberId(); - TopologyHandler.getInstance().terminateMemberInMockIaas(memberId, mockIaasApiClient); - TopologyHandler.getInstance().assertMemberTermination(memberId); - } - - List<String> clusterIds = new ArrayList<String>(); - clusterIds.add(clusterIdC3); - clusterIds.add(clusterIdC4); - clusterIds.add(clusterIdC2); - - assertGroupInactive(groupId, clusterIdC3); - - assertTerminatingOfNodes(groupId, clusterIds); - - assertTerminationOfNodes(groupId, clusterIds); - - assertCreationOfNodes(groupId, clusterIdC2); - - assertCreationOfNodes(clusterIdC3, clusterIdC4); - - //Application active handling - topologyHandler.assertApplicationStatus(bean.getApplicationId(), - ApplicationStatus.Active); - - //Group active handling - topologyHandler.assertGroupActivation(bean.getApplicationId()); - - //Cluster active handling - topologyHandler.assertClusterActivation(bean.getApplicationId()); - - boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, - "g-sc-G4-group-termination-behavior-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertFalse(removedGroup); - - boolean removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertFalse(removedAuto); - - boolean removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-group-termination-behavior-test-1", - RestConstants.NETWORK_PARTITIONS_NAME); - //Trying to remove the used network partition - assertFalse(removedNet); - - boolean removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-group-termination-behavior-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertFalse(removedDep); - - //Un-deploying the application - String resourcePathUndeploy = RestConstants.APPLICATIONS + "/" + "group-termination-behavior-test" + - RestConstants.APPLICATIONS_UNDEPLOY; - - boolean unDeployed = restClient.undeployEntity(resourcePathUndeploy, - RestConstants.APPLICATIONS_NAME); - assertTrue(unDeployed); - - boolean undeploy = topologyHandler.assertApplicationUndeploy("group-termination-behavior-test"); - if (!undeploy) { - //Need to forcefully undeploy the application - log.info("Force undeployment is going to start for the [application] " + - "group-termination-behavior-test"); - - restClient.undeployEntity(RestConstants.APPLICATIONS + "/" + "group-termination-behavior-test" + - RestConstants.APPLICATIONS_UNDEPLOY + "?force=true", RestConstants.APPLICATIONS); - - boolean forceUndeployed = topologyHandler.assertApplicationUndeploy("group-termination-behavior-test"); - assertTrue(String.format("Forceful undeployment failed for the application %s", - "group-termination-behavior-test"), forceUndeployed); - - } - - boolean removed = restClient.removeEntity(RestConstants.APPLICATIONS, "group-termination-behavior-test", - RestConstants.APPLICATIONS_NAME); - assertTrue(removed); - - ApplicationBean beanRemoved = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "group-termination-behavior-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertNull(beanRemoved); - - removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, - "g-sc-G4-group-termination-behavior-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(removedGroup); - - boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c1-group-termination-behavior-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC1); - - boolean removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "c2-group-termination-behavior-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC2); - - boolean removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "c3-group-termination-behavior-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC3); - - boolean removedC4 = restClient.removeEntity(RestConstants.CARTRIDGES, "c4-group-termination-behavior-test", - RestConstants.CARTRIDGES_NAME); - assertTrue(removedC4); - - removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertTrue(removedAuto); - - removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-group-termination-behavior-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertTrue(removedDep); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-group-termination-behavior-test-1", RestConstants.NETWORK_PARTITIONS_NAME); - assertFalse(removedNet); - - boolean removeAppPolicy = restClient.removeEntity(RestConstants.APPLICATION_POLICIES, - "application-policy-group-termination-behavior-test", RestConstants.APPLICATION_POLICIES_NAME); - assertTrue(removeAppPolicy); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-group-termination-behavior-test-1", RestConstants.NETWORK_PARTITIONS_NAME); - assertTrue(removedNet); - - log.info( - "-------------------------------Ended application termination behavior test case-------------------------------"); - - } - catch (Exception e) { - log.error("An error occurred while handling application termination behavior", e); - assertTrue("An error occurred while handling application termination behavior", false); - } - } - - private void assertGroupInactive(String groupId, String clusterId) { - long startTime = System.currentTimeMillis(); - Map<String, Long> inActiveMap = TopologyHandler.getInstance().getInActiveMembers(); - - while (!inActiveMap.containsKey(clusterId)) { - try { - Thread.sleep(1000); - } - catch (InterruptedException ignore) { - } - inActiveMap = TopologyHandler.getInstance().getInActiveMembers(); - if ((System.currentTimeMillis() - startTime) > GROUP_INACTIVE_TIMEOUT) { - break; - } - } - assertTrue(inActiveMap.containsKey(clusterId)); - - while (!inActiveMap.containsKey(groupId)) { - try { - Thread.sleep(1000); - } - catch (InterruptedException ignore) { - } - inActiveMap = TopologyHandler.getInstance().getInActiveMembers(); - if ((System.currentTimeMillis() - startTime) > GROUP_INACTIVE_TIMEOUT) { - break; - } - } - assertTrue(inActiveMap.containsKey(groupId)); - - } - - private void assertTerminatingOfNodes(String groupId, List<String> clusterIds) { - Map<String, Long> terminatingMembers = TopologyHandler.getInstance().getTerminatingMembers(); - for (String clusterId : clusterIds) { - long startTime = System.currentTimeMillis(); - while (!terminatingMembers.containsKey(clusterId)) { - try { - Thread.sleep(1000); - } - catch (InterruptedException ignore) { - } - terminatingMembers = TopologyHandler.getInstance().getTerminatingMembers(); - if ((System.currentTimeMillis() - startTime) > GROUP_INACTIVE_TIMEOUT) { - break; - } - } - assertTrue(terminatingMembers.containsKey(groupId)); - } - long startTime = System.currentTimeMillis(); - while (!terminatingMembers.containsKey(groupId)) { - try { - Thread.sleep(1000); - } - catch (InterruptedException ignore) { - } - terminatingMembers = TopologyHandler.getInstance().getTerminatingMembers(); - if ((System.currentTimeMillis() - startTime) > GROUP_INACTIVE_TIMEOUT) { - break; - } - } - assertTrue(terminatingMembers.containsKey(groupId)); - - } - - private void assertTerminationOfNodes(String groupId, List<String> clusterIds) { - long startTime = System.currentTimeMillis(); - Map<String, Long> terminatedMembers = TopologyHandler.getInstance().getTerminatedMembers(); - - for (String clusterId : clusterIds) { - while (!terminatedMembers.containsKey(clusterId)) { - try { - Thread.sleep(1000); - } - catch (InterruptedException ignore) { - } - terminatedMembers = TopologyHandler.getInstance().getTerminatedMembers(); - if ((System.currentTimeMillis() - startTime) > GROUP_INACTIVE_TIMEOUT) { - break; - } - } - assertTrue(terminatedMembers.containsKey(clusterId)); - } - - while (!terminatedMembers.containsKey(groupId)) { - try { - Thread.sleep(1000); - } - catch (InterruptedException ignore) { - } - terminatedMembers = TopologyHandler.getInstance().getTerminatedMembers(); - if ((System.currentTimeMillis() - startTime) > GROUP_INACTIVE_TIMEOUT) { - break; - } - } - - assertTrue(terminatedMembers.containsKey(groupId)); - } - - private void assertCreationOfNodes(String firstNodeId, String secondNodeId) { - //group1 started first, then cluster started later - long startTime = System.currentTimeMillis(); - Map<String, Long> activeMembers = TopologyHandler.getInstance().getActivateddMembers(); - Map<String, Long> createdMembers = TopologyHandler.getInstance().getCreatedMembers(); - //Active member should be available at the time cluster is started to create. - while (!activeMembers.containsKey(firstNodeId)) { - try { - Thread.sleep(1000); - } - catch (InterruptedException e) { - } - activeMembers = TopologyHandler.getInstance().getActivateddMembers(); - if ((System.currentTimeMillis() - startTime) > GROUP_INACTIVE_TIMEOUT) { - break; - } - } - assertTrue(activeMembers.containsKey(firstNodeId)); - - while (!createdMembers.containsKey(secondNodeId)) { - try { - Thread.sleep(1000); - } - catch (InterruptedException e) { - } - createdMembers = TopologyHandler.getInstance().getCreatedMembers(); - if ((System.currentTimeMillis() - startTime) > GROUP_INACTIVE_TIMEOUT) { - break; - } - } - - assertTrue(createdMembers.containsKey(secondNodeId)); - - assertTrue(createdMembers.get(secondNodeId) > activeMembers.get(firstNodeId)); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/395be450/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/PartitionOneAfterAnotherClusterTest.java ---------------------------------------------------------------------- diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/PartitionOneAfterAnotherClusterTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/PartitionOneAfterAnotherClusterTest.java deleted file mode 100644 index 1e8324e..0000000 --- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/PartitionOneAfterAnotherClusterTest.java +++ /dev/null @@ -1,298 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.stratos.integration.tests.application; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.stratos.common.beans.application.ApplicationBean; -import org.apache.stratos.common.beans.policy.deployment.ApplicationPolicyBean; -import org.apache.stratos.integration.tests.RestConstants; -import org.apache.stratos.integration.tests.StratosTestServerManager; -import org.apache.stratos.integration.tests.TopologyHandler; -import org.apache.stratos.messaging.domain.application.Application; -import org.apache.stratos.messaging.domain.application.ApplicationStatus; -import org.apache.stratos.messaging.domain.application.ClusterDataHolder; -import org.apache.stratos.messaging.domain.instance.ClusterInstance; -import org.apache.stratos.messaging.domain.topology.Cluster; -import org.apache.stratos.messaging.domain.topology.Member; -import org.apache.stratos.messaging.domain.topology.Service; -import org.apache.stratos.messaging.message.receiver.application.ApplicationManager; -import org.apache.stratos.messaging.message.receiver.topology.TopologyManager; -import org.testng.annotations.Test; - -import java.util.*; - -import static junit.framework.Assert.*; - -/** - * This will handle the scale-up and scale-down of a particular cluster bursting test cases - */ -public class PartitionOneAfterAnotherClusterTest extends StratosTestServerManager { - private static final Log log = LogFactory.getLog(SampleApplicationsTest.class); - private static final String RESOURCES_PATH = "/partition-round-robin-cluster-test"; - - - @Test - public void testDeployApplication() { - try { - log.info("-------------------------------Started Partition One after another test case-------------------------------"); - TopologyHandler topologyHandler = TopologyHandler.getInstance(); - String autoscalingPolicyId = "autoscaling-policy-3"; - - boolean addedScalingPolicy = restClient.addEntity(RESOURCES_PATH + RestConstants.AUTOSCALING_POLICIES_PATH - + "/" + autoscalingPolicyId + ".json", - RestConstants.AUTOSCALING_POLICIES, RestConstants.AUTOSCALING_POLICIES_NAME); - assertEquals(addedScalingPolicy, true); - - boolean addedC1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c7.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC1, true); - - boolean addedN1 = restClient.addEntity(RESOURCES_PATH + RestConstants.NETWORK_PARTITIONS_PATH + "/" + - "network-partition-11.json", - RestConstants.NETWORK_PARTITIONS, RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(addedN1, true); - - boolean addedDep = restClient.addEntity(RESOURCES_PATH + RestConstants.DEPLOYMENT_POLICIES_PATH + "/" + - "deployment-policy-5.json", - RestConstants.DEPLOYMENT_POLICIES, RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(addedDep, true); - - boolean added = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATIONS_PATH + "/" + - "single-cluster-scaling-test.json", RestConstants.APPLICATIONS, - RestConstants.APPLICATIONS_NAME); - assertEquals(added, true); - - ApplicationBean bean = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "single-cluster-scaling-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertEquals(bean.getApplicationId(), "single-cluster-scaling-test"); - - boolean addAppPolicy = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATION_POLICIES_PATH + "/" + - "application-policy-4.json", RestConstants.APPLICATION_POLICIES, - RestConstants.APPLICATION_POLICIES_NAME); - assertEquals(addAppPolicy, true); - - ApplicationPolicyBean policyBean = (ApplicationPolicyBean) restClient.getEntity( - RestConstants.APPLICATION_POLICIES, - "application-policy-4", ApplicationPolicyBean.class, - RestConstants.APPLICATION_POLICIES_NAME); - - //deploy the application - String resourcePath = RestConstants.APPLICATIONS + "/" + "single-cluster-scaling-test" + - RestConstants.APPLICATIONS_DEPLOY + "/" + "application-policy-4"; - boolean deployed = restClient.deployEntity(resourcePath, - RestConstants.APPLICATIONS_NAME); - assertEquals(deployed, true); - - //Application active handling - topologyHandler.assertApplicationStatus(bean.getApplicationId(), - ApplicationStatus.Active); - - //Cluster active handling - topologyHandler.assertClusterActivation(bean.getApplicationId()); - - //Verifying whether members got created using round robin algorithm - assertClusterWithRoundRobinAlgorithm(bean.getApplicationId()); - - //Removing one member from cluster and check for auto healing - - - boolean removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertEquals(removedAuto, false); - - boolean removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-11", - RestConstants.NETWORK_PARTITIONS_NAME); - //Trying to remove the used network partition - assertEquals(removedNet, false); - - boolean removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-5", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(removedDep, false); - - //Un-deploying the application - String resourcePathUndeploy = RestConstants.APPLICATIONS + "/" + "single-cluster-scaling-test" + - RestConstants.APPLICATIONS_UNDEPLOY; - - boolean unDeployed = restClient.undeployEntity(resourcePathUndeploy, - RestConstants.APPLICATIONS_NAME); - assertEquals(unDeployed, true); - - boolean undeploy = topologyHandler.assertApplicationUndeploy("single-cluster-scaling-test"); - if (!undeploy) { - //Need to forcefully undeploy the application - log.info("Force undeployment is going to start for the [application] " + "single-cluster-scaling-test"); - - restClient.undeployEntity(RestConstants.APPLICATIONS + "/" + "single-cluster-scaling-test" + - RestConstants.APPLICATIONS_UNDEPLOY + "?force=true", RestConstants.APPLICATIONS); - - boolean forceUndeployed = topologyHandler.assertApplicationUndeploy("single-cluster-scaling-test"); - assertEquals(String.format("Forceful undeployment failed for the application %s", - "single-cluster-scaling-test"), forceUndeployed, true); - - } - - boolean removed = restClient.removeEntity(RestConstants.APPLICATIONS, "single-cluster-scaling-test", - RestConstants.APPLICATIONS_NAME); - assertEquals(removed, true); - - ApplicationBean beanRemoved = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "single-cluster-scaling-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertEquals(beanRemoved, null); - - boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c7", - RestConstants.CARTRIDGES_NAME); - assertEquals(removedC1, true); - - - removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertEquals(removedAuto, true); - - removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-5", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(removedDep, true); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-11", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedNet, false); - - - boolean removeAppPolicy = restClient.removeEntity(RestConstants.APPLICATION_POLICIES, - "application-policy-4", RestConstants.APPLICATION_POLICIES_NAME); - assertEquals(removeAppPolicy, true); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-11", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedNet, true); - - log.info("-------------------------------Ended Partition one after another test case-------------------------------"); - - } catch (Exception e) { - log.error("An error occurred while handling application bursting", e); - assertTrue("An error occurred while handling application bursting", false); - } - } - - /** - * Assert application activation - * - * @param applicationName - */ - private void assertClusterWithRoundRobinAlgorithm(String applicationName) { - Application application = ApplicationManager.getApplications().getApplication(applicationName); - assertNotNull(String.format("Application is not found: [application-id] %s", - applicationName), application); - - Set<ClusterDataHolder> clusterDataHolderSet = application.getClusterDataRecursively(); - for (ClusterDataHolder clusterDataHolder : clusterDataHolderSet) { - String serviceName = clusterDataHolder.getServiceType(); - String clusterId = clusterDataHolder.getClusterId(); - Service service = TopologyManager.getTopology().getService(serviceName); - assertNotNull(String.format("Service is not found: [application-id] %s [service] %s", - applicationName, serviceName), service); - - Cluster cluster = service.getCluster(clusterId); - assertNotNull(String.format("Cluster is not found: [application-id] %s [service] %s [cluster-id] %s", - applicationName, serviceName, clusterId), cluster); - - for (ClusterInstance instance : cluster.getInstanceIdToInstanceContextMap().values()) { - List<String> partitionsUsedInMembers = new ArrayList<String>(); - Map<String, List<Long>> partitionIdToMembersMap = new HashMap<String, List<Long>>(); - for (Member member : cluster.getMembers()) { - String partitionId = member.getPartitionId(); - if (!partitionIdToMembersMap.containsKey(partitionId)) { - List<Long> members = new ArrayList<Long>(); - members.add(member.getInitTime()); - partitionIdToMembersMap.put(partitionId, members); - } else { - partitionIdToMembersMap.get(partitionId).add(member.getInitTime()); - } - if (!partitionsUsedInMembers.contains(partitionId)) { - partitionsUsedInMembers.add(partitionId); - } - } - String p1 = "network-partition-11-partition-1"; - String p2 = "network-partition-11-partition-2"; - List<Long> p1InitTime = partitionIdToMembersMap.get(p1); - Collections.sort(p1InitTime); - - List<Long> p2InitTime = partitionIdToMembersMap.get(p2); - Collections.sort(p2InitTime); - - List<Long> allInitTime = new ArrayList<Long>(); - allInitTime.addAll(p1InitTime); - allInitTime.addAll(p2InitTime); - Collections.sort(allInitTime); - - int p1Index = -1; - int p2Index = -1; - String previousPartition = null; - for (int i = 0; i < allInitTime.size(); i++) { - if (previousPartition == null) { - if (p1InitTime.get(0) == allInitTime.get(i)) { - previousPartition = p1; - p1Index++; - } else if (p2InitTime.get(0) == allInitTime.get(i)) { - previousPartition = p2; - p2Index++; - - } - } else if (previousPartition.equals(p1)) { - p2Index++; - previousPartition = p2; - assertEquals("Partition-2 doesn't not contain correct values in current " + - "iteration", allInitTime.get(i), p2InitTime.get(p2Index)); - if (p1Index >= 0) { - assertEquals("Partition-1 doesn't not contain correct values in the " + - "previous iteration", allInitTime.get(i - 1), p1InitTime.get(p1Index)); - if (p1Index + 1 <= (p1InitTime.size() - 1) && i + 1 <= (allInitTime.size() - 1)) { - assertEquals("Partition-1 doesn't not contain correct " + - "values in the next iteration", - allInitTime.get(i + 1), p1InitTime.get(p1Index + 1)); - - } - } - } else { - p1Index++; - previousPartition = p1; - assertEquals("Partition-1 doesn't not contain correct values in current " + - "iteration", allInitTime.get(i), p1InitTime.get(p1Index)); - if (p2Index >= 0) { - assertEquals("Partition-2 doesn't not contain correct values " + - "in the previous iteration", allInitTime.get(i - 1), p2InitTime.get(p2Index)); - if ((p2Index + 1) <= (p2InitTime.size() - 1) && (i + 1) <= (allInitTime.size() - 1)) { - assertEquals("Partition-2 doesn't not contain correct values " + - "in the next iteration", - allInitTime.get(i + 1), p2InitTime.get(p2Index + 1)); - } - } - } - - } - - - } - - } - - - } -}
