http://git-wip-us.apache.org/repos/asf/stratos/blob/395be450/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/PartitionRoundRobinClusterTest.java ---------------------------------------------------------------------- diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/PartitionRoundRobinClusterTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/PartitionRoundRobinClusterTest.java deleted file mode 100644 index 3c0cee1..0000000 --- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/PartitionRoundRobinClusterTest.java +++ /dev/null @@ -1,305 +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 PartitionRoundRobinClusterTest 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 application Bursting test case-------------------------------"); - TopologyHandler topologyHandler = TopologyHandler.getInstance(); - String autoscalingPolicyId = "autoscaling-policy-partition-round-robin-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 + "/" + "c7-partition-round-robin-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC1, true); - - boolean addedN1 = restClient.addEntity(RESOURCES_PATH + RestConstants.NETWORK_PARTITIONS_PATH + "/" + - "network-partition-partition-round-robin-test.json", - RestConstants.NETWORK_PARTITIONS, RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(addedN1, true); - - boolean addedDep = restClient.addEntity(RESOURCES_PATH + RestConstants.DEPLOYMENT_POLICIES_PATH + "/" + - "deployment-policy-partition-round-robin-test.json", - RestConstants.DEPLOYMENT_POLICIES, RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(addedDep, true); - - boolean added = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATIONS_PATH + "/" + - "partition-round-robin-test.json", RestConstants.APPLICATIONS, - RestConstants.APPLICATIONS_NAME); - assertEquals(added, true); - - ApplicationBean bean = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "partition-round-robin-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertEquals(bean.getApplicationId(), "partition-round-robin-test"); - - boolean addAppPolicy = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATION_POLICIES_PATH + "/" + - "application-policy-partition-round-robin-test.json", RestConstants.APPLICATION_POLICIES, - RestConstants.APPLICATION_POLICIES_NAME); - assertEquals(addAppPolicy, true); - - //deploy the application - String resourcePath = RestConstants.APPLICATIONS + "/" + "partition-round-robin-test" + - RestConstants.APPLICATIONS_DEPLOY + "/" + "application-policy-partition-round-robin-test"; - 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()); - - //Application in-active handling - log.info("Waiting for the faulty member detection from " + - "CEP as the statistics are stopped..."); - topologyHandler.assertApplicationStatus(bean.getApplicationId(), - ApplicationStatus.Inactive); - - //Application active handling after application becomes active again - topologyHandler.assertApplicationStatus(bean.getApplicationId(), - ApplicationStatus.Active); - - //Cluster active handling - topologyHandler.assertClusterActivation(bean.getApplicationId()); - - boolean removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertEquals(removedAuto, false); - - boolean removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-partition-round-robin-test", - RestConstants.NETWORK_PARTITIONS_NAME); - //Trying to remove the used network partition - assertEquals(removedNet, false); - - boolean removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-partition-round-robin-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(removedDep, false); - - //Un-deploying the application - String resourcePathUndeploy = RestConstants.APPLICATIONS + "/" + "partition-round-robin-test" + - RestConstants.APPLICATIONS_UNDEPLOY; - - boolean unDeployed = restClient.undeployEntity(resourcePathUndeploy, - RestConstants.APPLICATIONS_NAME); - assertEquals(unDeployed, true); - - boolean undeploy = topologyHandler.assertApplicationUndeploy("partition-round-robin-test"); - if (!undeploy) { - //Need to forcefully undeploy the application - log.info("Force undeployment is going to start for the [application] " + "partition-round-robin-test"); - - restClient.undeployEntity(RestConstants.APPLICATIONS + "/" + "partition-round-robin-test" + - RestConstants.APPLICATIONS_UNDEPLOY + "?force=true", RestConstants.APPLICATIONS); - - boolean forceUndeployed = topologyHandler.assertApplicationUndeploy("partition-round-robin-test"); - assertEquals(String.format("Forceful undeployment failed for the application %s", - "partition-round-robin-test"), forceUndeployed, true); - - } - - boolean removed = restClient.removeEntity(RestConstants.APPLICATIONS, "partition-round-robin-test", - RestConstants.APPLICATIONS_NAME); - assertEquals(removed, true); - - ApplicationBean beanRemoved = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "partition-round-robin-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertEquals(beanRemoved, null); - - boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c7-partition-round-robin-test", - 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-partition-round-robin-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(removedDep, true); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-partition-round-robin-test", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedNet, false); - - - boolean removeAppPolicy = restClient.removeEntity(RestConstants.APPLICATION_POLICIES, - "application-policy-partition-round-robin-test", RestConstants.APPLICATION_POLICIES_NAME); - assertEquals(removeAppPolicy, true); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-partition-round-robin-test", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedNet, true); - - 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); - } - } - - /** - * 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)); - } - } - } - - } - - - } - - } - - - } - -}
http://git-wip-us.apache.org/repos/asf/stratos/blob/395be450/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SampleApplicationsTest.java ---------------------------------------------------------------------- diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SampleApplicationsTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SampleApplicationsTest.java deleted file mode 100644 index e50806b..0000000 --- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SampleApplicationsTest.java +++ /dev/null @@ -1,409 +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 com.google.gson.reflect.TypeToken; -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.cartridge.CartridgeGroupReferenceBean; -import org.apache.stratos.common.beans.cartridge.CartridgeReferenceBean; -import org.apache.stratos.integration.tests.RestConstants; -import org.apache.stratos.integration.tests.StratosTestServerManager; -import org.testng.annotations.Test; - -import java.lang.reflect.Type; -import java.util.ArrayList; -import java.util.List; - -import static junit.framework.Assert.*; - -/** - * Sample application tests with application add, . - */ -public class SampleApplicationsTest extends StratosTestServerManager { - private static final Log log = LogFactory.getLog(SampleApplicationsTest.class); - private static final String RESOURCES_PATH = "/sample-applications-test"; - - @Test - public void testApplication() { - log.info("-------------------------------Started application test case-------------------------------"); - try { - String autoscalingPolicyId = "autoscaling-policy-sample-applications-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-sample-applications-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC1, true); - - boolean addedC2 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c2-sample-applications-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC2, true); - - boolean addedC3 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c3-sample-applications-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC3, true); - - boolean addedG1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGE_GROUPS_PATH + - "/" + "cartrdige-nested-sample-applications-test.json", RestConstants.CARTRIDGE_GROUPS, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(addedG1, true); - - CartridgeGroupBean beanG1 = (CartridgeGroupBean) restClient. - getEntity(RestConstants.CARTRIDGE_GROUPS, "G1-sample-applications-test", - CartridgeGroupBean.class, RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(beanG1.getName(), "G1-sample-applications-test"); - - boolean addedN1 = restClient.addEntity(RESOURCES_PATH + RestConstants.NETWORK_PARTITIONS_PATH + "/" + - "network-partition-sample-applications-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-sample-applications-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-sample-applications-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-sample-applications-test.json", RestConstants.APPLICATIONS, - RestConstants.APPLICATIONS_NAME); - assertEquals(added, true); - - ApplicationBean bean = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "g-sc-G123-1-sample-applications-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertEquals(bean.getApplicationId(), "g-sc-G123-1-sample-applications-test"); - - CartridgeGroupReferenceBean group1 = bean.getComponents().getGroups().get(0); - CartridgeGroupReferenceBean group2 = group1.getGroups().get(0); - CartridgeGroupReferenceBean group3 = group2.getGroups().get(0); - CartridgeReferenceBean c1 = group1.getCartridges().get(0); - CartridgeReferenceBean c2 = group2.getCartridges().get(0); - CartridgeReferenceBean c3 = group3.getCartridges().get(0); - - assertEquals(group1.getName(), "G1-sample-applications-test"); - assertEquals(group1.getAlias(), "group1-sample-applications-test"); - assertEquals(group1.getGroupMaxInstances(), 1); - assertEquals(group1.getGroupMinInstances(), 1); - - assertEquals(c1.getType(), "c1-sample-applications-test"); - assertEquals(c1.getCartridgeMin(), 1); - assertEquals(c1.getCartridgeMax(), 2); - - assertEquals(group2.getAlias(), "group2-sample-applications-test"); - assertEquals(group2.getName(), "G2-sample-applications-test"); - assertEquals(group2.getGroupMaxInstances(), 1); - assertEquals(group2.getGroupMinInstances(), 1); - - assertEquals(c2.getType(), "c2-sample-applications-test"); - assertEquals(c2.getCartridgeMin(), 1); - assertEquals(c2.getCartridgeMax(), 2); - - assertEquals(group3.getAlias(), "group3-sample-applications-test"); - assertEquals(group3.getName(), "G3-sample-applications-test"); - assertEquals(group3.getGroupMaxInstances(), 2); - assertEquals(group3.getGroupMinInstances(), 1); - - assertEquals(c3.getType(), "c3-sample-applications-test"); - assertEquals(c3.getCartridgeMin(), 1); - assertEquals(c3.getCartridgeMax(), 2); - - boolean updated = restClient.updateEntity(RESOURCES_PATH + RestConstants.APPLICATIONS_PATH + - "/g-sc-G123-1-sample-applications-test-v1.json", - RestConstants.APPLICATIONS, RestConstants.APPLICATIONS_NAME); - assertEquals(updated, true); - - ApplicationBean updatedBean = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "g-sc-G123-1-sample-applications-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - - assertEquals(bean.getApplicationId(), "g-sc-G123-1-sample-applications-test"); - - group1 = updatedBean.getComponents().getGroups().get(0); - group2 = group1.getGroups().get(0); - group3 = group2.getGroups().get(0); - c1 = group1.getCartridges().get(0); - c2 = group2.getCartridges().get(0); - c3 = group3.getCartridges().get(0); - - assertEquals(group1.getName(), "G1-sample-applications-test"); - assertEquals(group1.getAlias(), "group1-sample-applications-test"); - assertEquals(group1.getGroupMaxInstances(), 1); - assertEquals(group1.getGroupMinInstances(), 1); - - assertEquals(c1.getType(), "c1-sample-applications-test"); - assertEquals(c1.getCartridgeMin(), 2); - assertEquals(c1.getCartridgeMax(), 3); - - assertEquals(group2.getAlias(), "group2-sample-applications-test"); - assertEquals(group2.getName(), "G2-sample-applications-test"); - assertEquals(group2.getGroupMaxInstances(), 1); - assertEquals(group2.getGroupMinInstances(), 1); - - assertEquals(c2.getType(), "c2-sample-applications-test"); - assertEquals(c2.getCartridgeMin(), 2); - assertEquals(c2.getCartridgeMax(), 4); - - assertEquals(group3.getAlias(), "group3-sample-applications-test"); - assertEquals(group3.getName(), "G3-sample-applications-test"); - assertEquals(group3.getGroupMaxInstances(), 3); - assertEquals(group3.getGroupMinInstances(), 2); - - assertEquals(c3.getType(), "c3-sample-applications-test"); - assertEquals(c3.getCartridgeMin(), 2); - assertEquals(c3.getCartridgeMax(), 3); - - - boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1-sample-applications-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-sample-applications-test-1", - RestConstants.NETWORK_PARTITIONS_NAME); - //Trying to remove the used network partition - assertFalse(removedNet); - - boolean removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-sample-applications-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertFalse(removedDep); - - boolean removed = restClient.removeEntity(RestConstants.APPLICATIONS, "g-sc-G123-1-sample-applications-test", - RestConstants.APPLICATIONS_NAME); - assertTrue(removed); - - ApplicationBean beanRemoved = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - "g-sc-G123-1-sample-applications-test", ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertNull(beanRemoved); - - removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1-sample-applications-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(removedGroup, true); - - boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c1-sample-applications-test", - RestConstants.CARTRIDGES_NAME); - assertEquals(removedC1, true); - - boolean removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "c2-sample-applications-test", - RestConstants.CARTRIDGES_NAME); - assertEquals(removedC2, true); - - boolean removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "c3-sample-applications-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-sample-applications-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(removedDep, true); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-sample-applications-test-1", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedNet, true); - - boolean removedN2 = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-sample-applications-test-2", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(String.format("[Network partition] network-partition-sample-applications-test-2 " + - "could not be removed for [application] g-sc-G123-1-sample-applications-test"), removedN2, true); - - log.info("-------------------------------Ended application test case-------------------------------"); - - } catch (Exception e) { - log.error("An error occurred while handling application test case", e); - assertTrue("An error occurred while handling application test case", false); - } - } - - @Test - public void testApplicationList() { - log.info("-------------------------------Started application listtest case-------------------------------"); - try { - String autoscalingPolicyId = "autoscaling-policy-sample-applications-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-sample-applications-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC1, true); - - boolean addedC2 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c2-sample-applications-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC2, true); - - boolean addedC3 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + "c3-sample-applications-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC3, true); - - boolean addedG1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGE_GROUPS_PATH + - "/" + "cartrdige-nested-sample-applications-test.json", RestConstants.CARTRIDGE_GROUPS, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(addedG1, true); - - CartridgeGroupBean beanG1 = (CartridgeGroupBean) restClient. - getEntity(RestConstants.CARTRIDGE_GROUPS, "G1-sample-applications-test", - CartridgeGroupBean.class, RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(beanG1.getName(), "G1-sample-applications-test"); - - boolean addedN1 = restClient.addEntity(RESOURCES_PATH + RestConstants.NETWORK_PARTITIONS_PATH + "/" + - "network-partition-sample-applications-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-sample-applications-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-sample-applications-test.json", - RestConstants.DEPLOYMENT_POLICIES, RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(addedDep, true); - - String app1 = "sample-applications-test-1"; - String app2 = "sample-applications-test-2"; - boolean added = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATIONS_PATH + "/" + - app1 + ".json", RestConstants.APPLICATIONS, - RestConstants.APPLICATIONS_NAME); - assertEquals(added, true); - - added = restClient.addEntity(RESOURCES_PATH + RestConstants.APPLICATIONS_PATH + "/" + - app2 + ".json", RestConstants.APPLICATIONS, - RestConstants.APPLICATIONS_NAME); - assertEquals(added, true); - - Type listType = new TypeToken<ArrayList<ApplicationBean>>() { - }.getType(); - - List<ApplicationBean> applicationList = (List<ApplicationBean>) restClient. - listEntity(RestConstants.APPLICATIONS, - listType, RestConstants.APPLICATIONS_NAME); - assertTrue(applicationList.size() >= 2); - - - ApplicationBean bean1 = null; - for (ApplicationBean applicationBean : applicationList) { - if (applicationBean.getApplicationId().equals(app1)) { - bean1 = applicationBean; - } - } - assertNotNull(bean1); - - ApplicationBean bean2 = null; - for (ApplicationBean applicationBean : applicationList) { - if (applicationBean.getApplicationId().equals(app2)) { - bean2 = applicationBean; - } - } - assertNotNull(bean2); - - - boolean removed = restClient.removeEntity(RestConstants.APPLICATIONS, app1, - RestConstants.APPLICATIONS_NAME); - assertTrue(removed); - - ApplicationBean beanRemoved = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - app1, ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertNull(beanRemoved); - - boolean removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1-sample-applications-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-sample-applications-test-1", - RestConstants.NETWORK_PARTITIONS_NAME); - //Trying to remove the used network partition - assertFalse(removedNet); - - boolean removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-sample-applications-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertFalse(removedDep); - - removed = restClient.removeEntity(RestConstants.APPLICATIONS, app2, - RestConstants.APPLICATIONS_NAME); - assertTrue(removed); - - beanRemoved = (ApplicationBean) restClient.getEntity(RestConstants.APPLICATIONS, - app2, ApplicationBean.class, RestConstants.APPLICATIONS_NAME); - assertNull(beanRemoved); - - removedGroup = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G1-sample-applications-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(removedGroup, true); - - boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c1-sample-applications-test", - RestConstants.CARTRIDGES_NAME); - assertEquals(removedC1, true); - - boolean removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "c2-sample-applications-test", - RestConstants.CARTRIDGES_NAME); - assertEquals(removedC2, true); - - boolean removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "c3-sample-applications-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-sample-applications-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(removedDep, true); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-sample-applications-test-1", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedNet, true); - - boolean removedN2 = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-sample-applications-test-2", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(String.format("[Network partition] network-partition-sample-applications-test-2 " + - "could not be removed for [application] g-sc-G123-1-sample-applications-test"), removedN2, true); - - log.info("-------------------------------Ended application test case-------------------------------"); - - } catch (Exception e) { - log.error("An error occurred while handling application test case", e); - assertTrue("An error occurred while handling application test case", 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/SingleClusterScalingTest.java ---------------------------------------------------------------------- diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SingleClusterScalingTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SingleClusterScalingTest.java deleted file mode 100644 index 1d4c4ab..0000000 --- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/application/SingleClusterScalingTest.java +++ /dev/null @@ -1,365 +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.MemberStatus; -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.Set; - -import static junit.framework.Assert.*; - -/** - * This will handle the scale-up and scale-down of a particular cluster bursting test cases - */ -public class SingleClusterScalingTest extends StratosTestServerManager { - private static final Log log = LogFactory.getLog(SampleApplicationsTest.class); - private static final String RESOURCES_PATH = "/single-cluster-scaling-test"; - private static final int CLUSTER_SCALE_UP_TIMEOUT = 180000; - private static final int CLUSTER_SCALE_DOWN_TIMEOUT = 360000; - private int activeInstancesAfterScaleup = 0; - - - @Test - public void testDeployApplication() { - try { - log.info("-------------------------------Started application Bursting test case-------------------------------"); - TopologyHandler topologyHandler = TopologyHandler.getInstance(); - String autoscalingPolicyId = "autoscaling-policy-single-cluster-scaling-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 + "/" + "c7-single-cluster-scaling-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertEquals(addedC1, true); - - boolean addedN1 = restClient.addEntity(RESOURCES_PATH + RestConstants.NETWORK_PARTITIONS_PATH + "/" + - "network-partition-single-cluster-scaling-test.json", - RestConstants.NETWORK_PARTITIONS, RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(addedN1, true); - - boolean addedDep = restClient.addEntity(RESOURCES_PATH + RestConstants.DEPLOYMENT_POLICIES_PATH + "/" + - "deployment-policy-single-cluster-scaling-test.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-single-cluster-scaling-test.json", RestConstants.APPLICATION_POLICIES, - RestConstants.APPLICATION_POLICIES_NAME); - assertEquals(addAppPolicy, true); - - ApplicationPolicyBean policyBean = (ApplicationPolicyBean) restClient.getEntity( - RestConstants.APPLICATION_POLICIES, - "application-policy-single-cluster-scaling-test", ApplicationPolicyBean.class, - RestConstants.APPLICATION_POLICIES_NAME); - - //deploy the application - String resourcePath = RestConstants.APPLICATIONS + "/" + "single-cluster-scaling-test" + - RestConstants.APPLICATIONS_DEPLOY + "/" + "application-policy-single-cluster-scaling-test"; - 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 - assertClusterWithScalingup(bean.getApplicationId()); - - //assert scale-down - assertClusterWithScaleDown(bean.getApplicationId()); - - //Check whether cluster could scale-down upto the minimum - assertClusterScaleDownToMinimumCount(bean.getApplicationId()); - - boolean removedAuto = restClient.removeEntity(RestConstants.AUTOSCALING_POLICIES, - autoscalingPolicyId, RestConstants.AUTOSCALING_POLICIES_NAME); - assertEquals(removedAuto, false); - - boolean removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-single-cluster-scaling-test", - RestConstants.NETWORK_PARTITIONS_NAME); - //Trying to remove the used network partition - assertEquals(removedNet, false); - - boolean removedDep = restClient.removeEntity(RestConstants.DEPLOYMENT_POLICIES, - "deployment-policy-single-cluster-scaling-test", 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-single-cluster-scaling-test", - 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-single-cluster-scaling-test", RestConstants.DEPLOYMENT_POLICIES_NAME); - assertEquals(removedDep, true); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-single-cluster-scaling-test", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedNet, false); - - - boolean removeAppPolicy = restClient.removeEntity(RestConstants.APPLICATION_POLICIES, - "application-policy-single-cluster-scaling-test", RestConstants.APPLICATION_POLICIES_NAME); - assertEquals(removeAppPolicy, true); - - removedNet = restClient.removeEntity(RestConstants.NETWORK_PARTITIONS, - "network-partition-single-cluster-scaling-test", RestConstants.NETWORK_PARTITIONS_NAME); - assertEquals(removedNet, true); - - 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); - } - } - - /** - * Assert application activation - * - * @param applicationName - */ - private void assertClusterWithScalingup(String applicationName) { - Application application = ApplicationManager.getApplications().getApplication(applicationName); - assertNotNull(String.format("Application is not found: [application-id] %s", - applicationName), application); - boolean clusterScaleup = false; - String clusterId = null; - long startTime = System.currentTimeMillis(); - while (!clusterScaleup) { - try { - Thread.sleep(1000); - } catch (InterruptedException ignore) { - } - Set<ClusterDataHolder> clusterDataHolderSet = application.getClusterDataRecursively(); - for (ClusterDataHolder clusterDataHolder : clusterDataHolderSet) { - String serviceName = clusterDataHolder.getServiceType(); - 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()) { - int activeInstances = 0; - for (Member member : cluster.getMembers()) { - if (member.getClusterInstanceId().equals(instance.getInstanceId())) { - if (member.getStatus().equals(MemberStatus.Active)) { - activeInstances++; - } - } - } - - clusterScaleup = activeInstances > clusterDataHolder.getMinInstances(); - if(clusterScaleup) { - activeInstancesAfterScaleup = activeInstances; - break; - } - } - application = ApplicationManager.getApplications().getApplication(applicationName); - if ((System.currentTimeMillis() - startTime) > CLUSTER_SCALE_UP_TIMEOUT) { - break; - } - } - } - assertEquals(String.format("Cluster did not get scaled up: [cluster-id] %s", clusterId), - clusterScaleup, true); - } - - /** - * Assert application activation - * - * @param applicationName - */ - private void assertClusterWithScaleDown(String applicationName) { - Application application = ApplicationManager.getApplications().getApplication(applicationName); - assertNotNull(String.format("Application is not found: [application-id] %s", - applicationName), application); - boolean clusterScaleDown = false; - String clusterId = null; - long startTime = System.currentTimeMillis(); - while (!clusterScaleDown) { - try { - Thread.sleep(1000); - } catch (InterruptedException ignore) { - } - Set<ClusterDataHolder> clusterDataHolderSet = application.getClusterDataRecursively(); - for (ClusterDataHolder clusterDataHolder : clusterDataHolderSet) { - String serviceName = clusterDataHolder.getServiceType(); - 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()) { - int activeInstances = 0; - for (Member member : cluster.getMembers()) { - if (member.getClusterInstanceId().equals(instance.getInstanceId())) { - if (member.getStatus().equals(MemberStatus.Active)) { - activeInstances++; - } - } - } - - if(activeInstances > activeInstancesAfterScaleup) { - activeInstancesAfterScaleup = activeInstances; - } - - clusterScaleDown = activeInstancesAfterScaleup - 1 == activeInstances; - if(clusterScaleDown) { - break; - } - - } - - application = ApplicationManager.getApplications().getApplication(applicationName); - if ((System.currentTimeMillis() - startTime) > CLUSTER_SCALE_DOWN_TIMEOUT) { - break; - } - } - } - assertEquals(String.format("Cluster did not get scaled up: [cluster-id] %s", clusterId), - clusterScaleDown, true); - } - - /** - * Assert application activation - * - * @param applicationName - */ - private void assertClusterScaleDownToMinimumCount(String applicationName) { - Application application = ApplicationManager.getApplications().getApplication(applicationName); - assertNotNull(String.format("Application is not found: [application-id] %s", - applicationName), application); - boolean clusterScaleDown = false; - String clusterId = null; - long startTime = System.currentTimeMillis(); - while (!clusterScaleDown) { - try { - Thread.sleep(1000); - } catch (InterruptedException ignore) { - } - Set<ClusterDataHolder> clusterDataHolderSet = application.getClusterDataRecursively(); - for (ClusterDataHolder clusterDataHolder : clusterDataHolderSet) { - String serviceName = clusterDataHolder.getServiceType(); - 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()) { - int activeInstances = 0; - for (Member member : cluster.getMembers()) { - if (member.getClusterInstanceId().equals(instance.getInstanceId())) { - if (member.getStatus().equals(MemberStatus.Active)) { - activeInstances++; - } - } - } - clusterScaleDown = activeInstances == clusterDataHolder.getMinInstances(); - if(clusterScaleDown) { - break; - } - } - application = ApplicationManager.getApplications().getApplication(applicationName); - if ((System.currentTimeMillis() - startTime) > CLUSTER_SCALE_DOWN_TIMEOUT) { - break; - } - } - } - assertEquals(String.format("Cluster did not get scaled up: [cluster-id] %s", clusterId), - clusterScaleDown, true); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/395be450/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeGroupTest.java ---------------------------------------------------------------------- diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeGroupTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeGroupTest.java deleted file mode 100644 index 67c71a4..0000000 --- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeGroupTest.java +++ /dev/null @@ -1,266 +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.group; - -import com.google.gson.reflect.TypeToken; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.stratos.common.beans.cartridge.CartridgeGroupBean; -import org.apache.stratos.integration.tests.RestConstants; -import org.apache.stratos.integration.tests.StratosTestServerManager; -import org.testng.annotations.Test; - -import java.lang.reflect.Type; -import java.util.ArrayList; -import java.util.List; - -import static junit.framework.Assert.*; - -/** - * Test to handle Cartridge group CRUD operations - */ -public class CartridgeGroupTest extends StratosTestServerManager { - private static final Log log = LogFactory.getLog(CartridgeGroupTest.class); - private static final String RESOURCES_PATH = "/cartridge-group-test"; - - @Test - public void testCartridgeGroup() { - try { - log.info("-------------------------Started Cartridge group test case-------------------------"); - - boolean addedC1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + - "/" + "c4-cartridge-group-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(String.format("Cartridge did not added: [cartridge-name] %s", - "c4-cartridge-group-test"), addedC1); - - boolean addedC2 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + - "/" + "c5-cartridge-group-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(String.format("Cartridge did not added: [cartridge-name] %s", - "c5-cartridge-group-test"), addedC2); - - boolean addedC3 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + - "/" + "c6-cartridge-group-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(String.format("Cartridge did not added: [cartridge-name] %s", - "c6-cartridge-group-test"), addedC3); - - boolean added = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGE_GROUPS_PATH + - "/" + "g4-g5-g6-cartridge-group-test.json", RestConstants.CARTRIDGE_GROUPS, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge Group did not added: [cartridge-group-name] %s", - "g4-g5-g6-cartridge-group-test"), added); - - CartridgeGroupBean bean = (CartridgeGroupBean) restClient. - getEntity(RestConstants.CARTRIDGE_GROUPS, "G4-cartridge-group-test", - CartridgeGroupBean.class, RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(String.format("Cartridge Group name did not match: [cartridge-group-name] %s", - "g4-g5-g6-cartridge-group-test.json"), bean.getName(), "G4-cartridge-group-test"); - - boolean updated = restClient.updateEntity(RESOURCES_PATH + RestConstants.CARTRIDGE_GROUPS_PATH + - "/" + "g4-g5-g6-cartridge-group-test-v1.json", - RestConstants.CARTRIDGE_GROUPS, RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge Group did not updated: [cartridge-group-name] %s", - "g4-g5-g6-cartridge-group-test"), updated); - - CartridgeGroupBean updatedBean = (CartridgeGroupBean) restClient. - getEntity(RestConstants.CARTRIDGE_GROUPS, "G4-cartridge-group-test", - CartridgeGroupBean.class, RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(String.format("Updated Cartridge Group didn't match: [cartridge-group-name] %s", - "g4-g5-g6-cartridge-group-test"), updatedBean.getName(), "G4-cartridge-group-test"); - - boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c4-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertFalse(String.format("Cartridge can be removed while it is used in " + - "cartridge group: [cartridge-name] %s", "c4-cartridge-group-test"), removedC1); - - boolean removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "c5-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertFalse(String.format("Cartridge can be removed while it is used in " + - "cartridge group: [cartridge-name] %s", - "c5-cartridge-group-test"), removedC2); - - boolean removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "c6-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertFalse(String.format("Cartridge can be removed while it is used in " + - "cartridge group: [cartridge-name] %s", - "c6-cartridge-group-test"), removedC3); - - boolean removed = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, "G4-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge Group did not removed: [cartridge-group-name] %s", - "g4-g5-g6-cartridge-group-test"), removed); - - CartridgeGroupBean beanRemoved = (CartridgeGroupBean) restClient. - getEntity(RestConstants.CARTRIDGE_GROUPS, "G4-cartridge-group-test", - CartridgeGroupBean.class, RestConstants.CARTRIDGE_GROUPS_NAME); - assertEquals(String.format("Cartridge Group did not removed completely: " + - "[cartridge-group-name] %s", - "g4-g5-g6-cartridge-group-test"), beanRemoved, null); - - removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c4-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge can not be removed : [cartridge-name] %s", - "c4-cartridge-group-test"), removedC1); - - removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "c5-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge can not be removed : [cartridge-name] %s", - "c5-cartridge-group-test"), removedC2); - - removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "c6-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge can not be removed : [cartridge-name] %s", - "c6-cartridge-group-test"), removedC3); - - log.info("-------------------------Ended Cartridge group test case-------------------------"); - - } catch (Exception e) { - log.error("An error occurred while handling Cartridge group test case", e); - assertFalse("An error occurred while handling Cartridge group test case", false); - } - } - - @Test - public void testCartridgeGroupList() { - try { - log.info("-------------------------Started Cartridge group list test case-------------------------"); - - boolean addedC1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + - "/" + "c4-cartridge-group-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(String.format("Cartridge did not added: [cartridge-name] %s", - "c4-cartridge-group-test"), addedC1); - - boolean addedC2 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + - "/" + "c5-cartridge-group-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(String.format("Cartridge did not added: [cartridge-name] %s", - "c5-cartridge-group-test"), addedC2); - - boolean addedC3 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + - "/" + "c6-cartridge-group-test.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(String.format("Cartridge did not added: [cartridge-name] %s", - "c6-cartridge-group-test"), addedC3); - - String group1 = "group-1-cartridge-group-test"; - String group2 = "group-2-cartridge-group-test"; - - boolean added = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGE_GROUPS_PATH + - "/" + group1 + ".json", RestConstants.CARTRIDGE_GROUPS, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge Group did not added: [cartridge-group-name] %s", - group1), added); - - added = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGE_GROUPS_PATH + - "/" + group2 + ".json", RestConstants.CARTRIDGE_GROUPS, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge Group did not added: [cartridge-group-name] %s", - group1), added); - - Type listType = new TypeToken<ArrayList<CartridgeGroupBean>>() { - }.getType(); - - List<CartridgeGroupBean> cartridgeGroupList = (List<CartridgeGroupBean>) restClient. - listEntity(RestConstants.CARTRIDGE_GROUPS, - listType, RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(cartridgeGroupList.size() >= 2); - - CartridgeGroupBean bean1 = null; - for (CartridgeGroupBean cartridgeGroupBean : cartridgeGroupList) { - if (cartridgeGroupBean.getName().equals(group1)) { - bean1 = cartridgeGroupBean; - } - } - assertNotNull(bean1); - - CartridgeGroupBean bean2 = null; - for (CartridgeGroupBean cartridgeGroupBean : cartridgeGroupList) { - if (cartridgeGroupBean.getName().equals(group2)) { - bean2 = cartridgeGroupBean; - } - } - assertNotNull(bean2); - - boolean removed = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, group1, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge Group did not removed: [cartridge-group-name] %s", - group1), removed); - - CartridgeGroupBean beanRemoved = (CartridgeGroupBean) restClient. - getEntity(RestConstants.CARTRIDGE_GROUPS, group1, - CartridgeGroupBean.class, RestConstants.CARTRIDGE_GROUPS_NAME); - assertNull(String.format("Cartridge Group did not removed completely: " + - "[cartridge-group-name] %s", - group1), beanRemoved); - - boolean removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c4-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertFalse(String.format("Cartridge can be removed while it is used in " + - "cartridge group: [cartridge-name] %s", "c4-cartridge-group-test"), removedC1); - - boolean removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "c5-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertFalse(String.format("Cartridge can be removed while it is used in " + - "cartridge group: [cartridge-name] %s", - "c5-cartridge-group-test"), removedC2); - - boolean removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "c6-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertFalse(String.format("Cartridge can be removed while it is used in " + - "cartridge group: [cartridge-name] %s", - "c6-cartridge-group-test"), removedC3); - - removed = restClient.removeEntity(RestConstants.CARTRIDGE_GROUPS, group2, - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge Group did not removed: [cartridge-group-name] %s", - group2), removed); - - beanRemoved = (CartridgeGroupBean) restClient. - getEntity(RestConstants.CARTRIDGE_GROUPS, group2, - CartridgeGroupBean.class, RestConstants.CARTRIDGE_GROUPS_NAME); - assertNull(String.format("Cartridge Group did not removed completely: " + - "[cartridge-group-name] %s", - group2), beanRemoved); - - removedC1 = restClient.removeEntity(RestConstants.CARTRIDGES, "c4-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge can not be removed : [cartridge-name] %s", - "c4-cartridge-group-test"), removedC1); - - removedC2 = restClient.removeEntity(RestConstants.CARTRIDGES, "c5-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge can not be removed : [cartridge-name] %s", - "c5-cartridge-group-test"), removedC2); - - removedC3 = restClient.removeEntity(RestConstants.CARTRIDGES, "c6-cartridge-group-test", - RestConstants.CARTRIDGE_GROUPS_NAME); - assertTrue(String.format("Cartridge can not be removed : [cartridge-name] %s", - "c6-cartridge-group-test"), removedC3); - - log.info("-------------------------Ended Cartridge group list test case-------------------------"); - } catch (Exception e) { - log.error("An error occurred while handling Cartridge list group test case", e); - assertFalse("An error occurred while handling Cartridge list group test case", false); - } - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/395be450/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeTest.java ---------------------------------------------------------------------- diff --git a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeTest.java b/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeTest.java deleted file mode 100644 index 571b261..0000000 --- a/products/stratos/modules/integration/src/test/java/org/apache/stratos/integration/tests/group/CartridgeTest.java +++ /dev/null @@ -1,199 +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.group; - -import com.google.gson.reflect.TypeToken; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.stratos.common.beans.PropertyBean; -import org.apache.stratos.common.beans.cartridge.CartridgeBean; -import org.apache.stratos.integration.tests.RestConstants; -import org.apache.stratos.integration.tests.StratosTestServerManager; -import org.testng.annotations.Test; - -import java.lang.reflect.Type; -import java.util.ArrayList; -import java.util.List; - -import static junit.framework.Assert.*; - -/** - * Test to handle Cartridge CRUD operations - */ -public class CartridgeTest extends StratosTestServerManager { - private static final Log log = LogFactory.getLog(CartridgeTest.class); - private static final String RESOURCES_PATH = "/cartridge-test"; - - - @Test - public void testCartridge() { - log.info("--------------------Started Cartridge test case-----------------------------"); - - try { - String cartridgeType = "c0-cartridge-test"; - boolean added = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + - cartridgeType + ".json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(added); - CartridgeBean bean = (CartridgeBean) restClient. - getEntity(RestConstants.CARTRIDGES, cartridgeType, - CartridgeBean.class, RestConstants.CARTRIDGES_NAME); - assertEquals(bean.getCategory(), "Application"); - assertEquals(bean.getHost(), "qmog.cisco.com"); - for (PropertyBean property : bean.getProperty()) { - if (property.getName().equals("payload_parameter.CEP_IP")) { - assertEquals(property.getValue(), "octl.qmog.cisco.com"); - } else if (property.getName().equals("payload_parameter.CEP_ADMIN_PASSWORD")) { - assertEquals(property.getValue(), "admin"); - } else if (property.getName().equals("payload_parameter.MONITORING_SERVER_IP")) { - assertEquals(property.getValue(), "octl.qmog.cisco.com"); - } else if (property.getName().equals("payload_parameter.QTCM_NETWORK_COUNT")) { - assertEquals(property.getValue(), "1"); - } else if (property.getName().equals("payload_parameter.MONITORING_SERVER_ADMIN_PASSWORD")) { - assertEquals(property.getValue(), "admin"); - } else if (property.getName().equals("payload_parameter.QTCM_DNS_SEGMENT")) { - assertEquals(property.getValue(), "test"); - } else if (property.getName().equals("payload_parameter.MONITORING_SERVER_SECURE_PORT")) { - assertEquals(property.getValue(), "7711"); - } else if (property.getName().equals("payload_parameter.MONITORING_SERVER_PORT")) { - assertEquals(property.getValue(), "7611"); - } else if (property.getName().equals("payload_parameter.CEP_PORT")) { - assertEquals(property.getValue(), "7611"); - } else if (property.getName().equals("payload_parameter.MB_PORT")) { - assertEquals(property.getValue(), "61616"); - } - } - - - boolean updated = restClient.updateEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + - cartridgeType + "-v1.json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(updated); - CartridgeBean updatedBean = (CartridgeBean) restClient. - getEntity(RestConstants.CARTRIDGES, cartridgeType, - CartridgeBean.class, RestConstants.CARTRIDGES_NAME); - assertEquals(updatedBean.getType(), "c0-cartridge-test"); - assertEquals(updatedBean.getCategory(), "Data"); - assertEquals(updatedBean.getHost(), "qmog.cisco.com12"); - for (PropertyBean property : updatedBean.getProperty()) { - if (property.getName().equals("payload_parameter.CEP_IP")) { - assertEquals(property.getValue(), "octl.qmog.cisco.com123"); - } else if (property.getName().equals("payload_parameter.CEP_ADMIN_PASSWORD")) { - assertEquals(property.getValue(), "admin123"); - } else if (property.getName().equals("payload_parameter.MONITORING_SERVER_IP")) { - assertEquals(property.getValue(), "octl.qmog.cisco.com123"); - } else if (property.getName().equals("payload_parameter.QTCM_NETWORK_COUNT")) { - assertEquals(property.getValue(), "3"); - } else if (property.getName().equals("payload_parameter.MONITORING_SERVER_ADMIN_PASSWORD")) { - assertEquals(property.getValue(), "admin123"); - } else if (property.getName().equals("payload_parameter.QTCM_DNS_SEGMENT")) { - assertEquals(property.getValue(), "test123"); - } else if (property.getName().equals("payload_parameter.MONITORING_SERVER_SECURE_PORT")) { - assertEquals(property.getValue(), "7712"); - } else if (property.getName().equals("payload_parameter.MONITORING_SERVER_PORT")) { - assertEquals(property.getValue(), "7612"); - } else if (property.getName().equals("payload_parameter.CEP_PORT")) { - assertEquals(property.getValue(), "7612"); - } else if (property.getName().equals("payload_parameter.MB_PORT")) { - assertEquals(property.getValue(), "61617"); - } - } - - boolean removed = restClient.removeEntity(RestConstants.CARTRIDGES, cartridgeType, - RestConstants.CARTRIDGES_NAME); - assertTrue(removed); - - CartridgeBean beanRemoved = (CartridgeBean) restClient. - getEntity(RestConstants.CARTRIDGES, cartridgeType, - CartridgeBean.class, RestConstants.CARTRIDGES_NAME); - assertNull(beanRemoved); - - log.info("---------------------------Ended Cartridge test case-------------------------"); - } catch (Exception e) { - log.error("An error occurred while handling RESTConstants.CARTRIDGES_PATH", e); - assertTrue("An error occurred while handling RESTConstants.CARTRIDGES_PATH", false); - } - } - - @Test - public void testCartridgeList() { - log.info("--------------------Started Cartridge list test case-----------------------------"); - - try { - String cartridgeType1 = "c1-cartridge-test"; - String cartridgeType2 = "c2-cartridge-test"; - boolean added1 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + - cartridgeType1 + ".json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(added1); - - boolean added2 = restClient.addEntity(RESOURCES_PATH + RestConstants.CARTRIDGES_PATH + "/" + - cartridgeType2 + ".json", - RestConstants.CARTRIDGES, RestConstants.CARTRIDGES_NAME); - assertTrue(added2); - - Type listType = new TypeToken<ArrayList<CartridgeBean>>() { - }.getType(); - - List<CartridgeBean> cartridgeList = (List<CartridgeBean>) restClient.listEntity(RestConstants.CARTRIDGES, - listType, RestConstants.CARTRIDGES_NAME); - assertTrue(cartridgeList.size() >= 2); - - CartridgeBean bean1 = null; - for (CartridgeBean cartridgeBean : cartridgeList) { - if (cartridgeBean.getType().equals(cartridgeType1)) { - bean1 = cartridgeBean; - } - } - assertNotNull(bean1); - - CartridgeBean bean2 = null; - for (CartridgeBean cartridgeBean : cartridgeList) { - if (cartridgeBean.getType().equals(cartridgeType1)) { - bean2 = cartridgeBean; - } - } - assertNotNull(bean2); - - boolean removed = restClient.removeEntity(RestConstants.CARTRIDGES, cartridgeType1, - RestConstants.CARTRIDGES_NAME); - assertTrue(removed); - - CartridgeBean beanRemoved = (CartridgeBean) restClient. - getEntity(RestConstants.CARTRIDGES, cartridgeType1, - CartridgeBean.class, RestConstants.CARTRIDGES_NAME); - assertEquals(beanRemoved, null); - - removed = restClient.removeEntity(RestConstants.CARTRIDGES, cartridgeType2, - RestConstants.CARTRIDGES_NAME); - assertTrue(removed); - - beanRemoved = (CartridgeBean) restClient. - getEntity(RestConstants.CARTRIDGES, cartridgeType2, - CartridgeBean.class, RestConstants.CARTRIDGES_NAME); - assertNull(beanRemoved); - - log.info("---------------------------Ended Cartridge list test case-------------------------"); - } catch (Exception e) { - log.error("An error occurred while handling Cartridges list", e); - assertTrue("An error occurred while handling Cartridges list", false); - } - } -}
