test case to test the partition deployer/parser
Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/cdc02a69 Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/cdc02a69 Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/cdc02a69 Branch: refs/heads/master Commit: cdc02a691df3ad7982b363721d9e07f26916eaca Parents: 50955e7 Author: Nirmal Fernando <[email protected]> Authored: Sun Dec 1 16:23:30 2013 +0530 Committer: Nirmal Fernando <[email protected]> Committed: Sun Dec 1 16:23:30 2013 +0530 ---------------------------------------------------------------------- .../policy/PartitionDeployerTest.java | 66 ++++++++++++++++++++ .../src/test/resources/partition.xml | 10 +++ .../src/test/resources/partitions.xml | 15 +++++ 3 files changed, 91 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/cdc02a69/components/org.apache.stratos.autoscaler/src/test/java/org/apache/stratos/autoscaler/deployment/policy/PartitionDeployerTest.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/test/java/org/apache/stratos/autoscaler/deployment/policy/PartitionDeployerTest.java b/components/org.apache.stratos.autoscaler/src/test/java/org/apache/stratos/autoscaler/deployment/policy/PartitionDeployerTest.java new file mode 100644 index 0000000..081161c --- /dev/null +++ b/components/org.apache.stratos.autoscaler/src/test/java/org/apache/stratos/autoscaler/deployment/policy/PartitionDeployerTest.java @@ -0,0 +1,66 @@ +/* + * 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.autoscaler.deployment.policy; + +import static org.junit.Assert.*; + +import java.io.File; + +import org.apache.stratos.autoscaler.exception.InvalidPolicyException; +import org.apache.stratos.autoscaler.partition.deployers.PartitionReader; +import org.apache.stratos.autoscaler.policy.deployers.DeploymentPolicyReader; +import org.apache.stratos.cloud.controller.deployment.partition.Partition; +import org.junit.Before; +import org.junit.Test; + +/** + * @author nirmal + * + */ +public class PartitionDeployerTest { + + PartitionReader reader, reader1; + + /** + * @throws java.lang.Exception + */ + @Before + public void setUp() throws Exception { + reader = new PartitionReader(new File("src/test/resources/partitions.xml")); + reader1 = new PartitionReader(new File("src/test/resources/partition.xml")); + } + + @Test + public void testPartitionCount() throws InvalidPolicyException { + + assertEquals(2, reader.getPartitionList().size()); + } + + @Test + public void testPartition() throws InvalidPolicyException { + + assertEquals(1, reader1.getPartitionList().size()); + + Partition p = reader1.getPartitionList().get(0); + assertEquals("P1", p.getId()); + assertEquals(3, p.getPartitionMax()); + assertEquals(2, p.getProperties().getProperties().length); + } + +} http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/cdc02a69/components/org.apache.stratos.autoscaler/src/test/resources/partition.xml ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/test/resources/partition.xml b/components/org.apache.stratos.autoscaler/src/test/resources/partition.xml new file mode 100644 index 0000000..8377abc --- /dev/null +++ b/components/org.apache.stratos.autoscaler/src/test/resources/partition.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8"?> +<partitions> + <partition id="P1" > + <provider>ec2</provider> + <property name="region" value="ap-southeast-1"/> + <property name="zone" value="ap-southeast-1-a"/> + <max>3</max> + <min>1</min> + </partition> +</partitions> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/cdc02a69/components/org.apache.stratos.autoscaler/src/test/resources/partitions.xml ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/test/resources/partitions.xml b/components/org.apache.stratos.autoscaler/src/test/resources/partitions.xml new file mode 100644 index 0000000..a41d633 --- /dev/null +++ b/components/org.apache.stratos.autoscaler/src/test/resources/partitions.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="utf-8"?> +<partitions> + <partition id="P1" > + <provider>ec2</provider> + <property name="region" value="ap-southeast-1"/> + <max>3</max> + <min>1</min> + </partition> + <partition id="P2" > + <provider>openstack</provider> + <property name="region" value="region-1"/> + <max>5</max> + <min>1</min> + </partition> +</partitions> \ No newline at end of file
