Repository: jclouds-labs Updated Branches: refs/heads/master 730ced56e -> 13a0440d9
JCLOUD-65 Create ParseTest for Domain objects in InfrastructureApi Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/13a0440d Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/13a0440d Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/13a0440d Branch: refs/heads/master Commit: 13a0440d918a9900ca011442734b169fcd34d458 Parents: 730ced5 Author: Trevor Flanagan <[email protected]> Authored: Thu Jul 13 18:11:28 2017 +0100 Committer: Ignasi Barrera <[email protected]> Committed: Fri Nov 24 15:20:23 2017 +0100 ---------------------------------------------------------------------- .../features/InfrastructureApiMockTest.java | 2 +- .../parse/DatacentersParseTest.java | 67 +++++++ .../src/test/resources/datacenters.json | 181 +------------------ 3 files changed, 70 insertions(+), 180 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/13a0440d/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/features/InfrastructureApiMockTest.java ---------------------------------------------------------------------- diff --git a/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/features/InfrastructureApiMockTest.java b/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/features/InfrastructureApiMockTest.java index 577428c..c44f764 100644 --- a/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/features/InfrastructureApiMockTest.java +++ b/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/features/InfrastructureApiMockTest.java @@ -40,7 +40,7 @@ public class InfrastructureApiMockTest extends BaseAccountAwareCloudControlMockT server.enqueue(jsonResponse("/datacenters.json")); Iterable<Datacenter> datacenters = api.getInfrastructureApi().listDatacenters().concat(); - assertEquals(size(datacenters), 2); // Force the PagedIterable to advance + assertEquals(size(datacenters), 1); // Force the PagedIterable to advance assertEquals(server.getRequestCount(), 2); assertSent(HttpMethod.GET, expectedListDatacentersUriBuilder().toString()); http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/13a0440d/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/parse/DatacentersParseTest.java ---------------------------------------------------------------------- diff --git a/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/parse/DatacentersParseTest.java b/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/parse/DatacentersParseTest.java new file mode 100644 index 0000000..1331067 --- /dev/null +++ b/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/parse/DatacentersParseTest.java @@ -0,0 +1,67 @@ +/* + * 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.jclouds.dimensiondata.cloudcontrol.parse; + +import org.jclouds.dimensiondata.cloudcontrol.domain.Backup; +import org.jclouds.dimensiondata.cloudcontrol.domain.ConsoleAccess; +import org.jclouds.dimensiondata.cloudcontrol.domain.Datacenter; +import org.jclouds.dimensiondata.cloudcontrol.domain.Datacenters; +import org.jclouds.dimensiondata.cloudcontrol.domain.Hypervisor; +import org.jclouds.dimensiondata.cloudcontrol.domain.Monitoring; +import org.jclouds.dimensiondata.cloudcontrol.domain.Networking; +import org.jclouds.dimensiondata.cloudcontrol.domain.Property; +import org.jclouds.dimensiondata.cloudcontrol.internal.BaseDimensionDataCloudControlParseTest; + +import javax.ws.rs.Consumes; +import javax.ws.rs.core.MediaType; +import java.util.Collections; +import java.util.List; + +public class DatacentersParseTest extends BaseDimensionDataCloudControlParseTest<Datacenters> { + + @Override + public String resource() { + return "/datacenters.json"; + } + + @Override + @Consumes(MediaType.APPLICATION_JSON) + public Datacenters expected() { + final List<Hypervisor.DiskSpeed> diskSpeeds = Collections.singletonList( + Hypervisor.DiskSpeed.create("STANDARD", "Standard", "STD", "Standard Disk Speed", true, true)); + final List<Hypervisor.CpuSpeed> cpuSpeeds = Collections + + .singletonList(Hypervisor.CpuSpeed.create("STANDARD", "Standard", "Standard CPU Speed", true, true)); + final Hypervisor hypervisor = Hypervisor.builder().diskSpeeds(diskSpeeds).cpuSpeeds(cpuSpeeds) + .properties(Collections.singletonList(Property.create("MIN_DISK_SIZE_GB", "10"))) + .maintenanceStatus("NORMAL").type("VMWARE").build(); + + final Datacenter datacenter = Datacenter.builder().displayName("US - West").city("Santa Clara") + .state("California").country("US").vpnUrl("https://na3.cloud-vpn.net").ftpsHost("ftps-na.cloud-vpn.net") + .networking(Networking.builder() + .properties(Collections.singletonList(Property.create("MAX_SERVER_TO_VIP_CONNECTIONS", "20"))) + .type("1").maintenanceStatus("NORMAL").build()).hypervisor(hypervisor).backup( + Backup.builder().maintenanceStatus("NORMAL").type("COMMVAULT") + .properties(Collections.<Property>emptyList()).build()).consoleAccess( + ConsoleAccess.builder().properties(Collections.<Property>emptyList()).maintenanceStatus("NORMAL") + .build()).monitoring( + Monitoring.builder().maintenanceStatus("NORMAL").properties(Collections.<Property>emptyList()) + .build()).type("MCP 1.0").id("NA3").build(); + + return new Datacenters(Collections.singletonList(datacenter), 1, 1, 1, 250); + } +} http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/13a0440d/dimensiondata/src/test/resources/datacenters.json ---------------------------------------------------------------------- diff --git a/dimensiondata/src/test/resources/datacenters.json b/dimensiondata/src/test/resources/datacenters.json index 776a1c6..3049737 100644 --- a/dimensiondata/src/test/resources/datacenters.json +++ b/dimensiondata/src/test/resources/datacenters.json @@ -26,22 +26,6 @@ "id": "STANDARD", "available": true, "default": true - }, - { - "displayName": "High Performance", - "abbreviation": "HPF", - "description": "Faster than Standard. Uses 15000 RPM disk with Fast Cache.", - "id": "HIGHPERFORMANCE", - "available": true, - "default": false - }, - { - "displayName": "Economy", - "abbreviation": "ECN", - "description": "Slower than Standard. Uses 7200 RPM disk without Fast Cache.", - "id": "ECONOMY", - "available": true, - "default": false } ], "cpuSpeed": [ @@ -57,38 +41,6 @@ { "name": "MIN_DISK_SIZE_GB", "value": "10" - }, - { - "name": "MAX_DISK_SIZE_GB", - "value": "1000" - }, - { - "name": "MAX_TOTAL_ADDITIONAL_STORAGE_GB", - "value": "10000" - }, - { - "name": "MAX_TOTAL_IMAGE_STORAGE_GB", - "value": "2600" - }, - { - "name": "MAX_CPU_COUNT", - "value": "16" - }, - { - "name": "MIN_MEMORY_GB", - "value": "1" - }, - { - "name": "MAX_MEMORY_GB", - "value": "128" - }, - { - "name": "VMWARE_HARDWARE_VERSION", - "value": "vmx-10" - }, - { - "name": "VLAN_SECURITY_GROUPS_ENABLED", - "value": "false" } ], "type": "VMWARE", @@ -109,139 +61,10 @@ }, "id": "NA3", "type": "MCP 1.0" - }, - { - "displayName": "US - East 3 - MCP 2.0", - "city": "Ashburn", - "state": "Virginia", - "country": "US", - "vpnUrl": "https://na9.cloud-vpn.net", - "ftpsHost": "ftps-na.cloud-vpn.net", - "networking": { - "property": [ - { - "name": "MAX_NODE_CONNECTION_LIMIT", - "value": "100000" - }, - { - "name": "MAX_NODE_CONNECTION_RATE_LIMIT", - "value": "4000" - }, - { - "name": "MAX_VIRTUAL_LISTENER_CONNECTION_LIMIT", - "value": "100000" - }, - { - "name": "MAX_VIRTUAL_LISTENER_CONNECTION_RATE_LIMIT", - "value": "4000" - } - ], - "type": "2", - "maintenanceStatus": "NORMAL" - }, - "hypervisor": { - "diskSpeed": [ - { - "displayName": "Standard", - "abbreviation": "STD", - "description": "Standard Disk Speed", - "id": "STANDARD", - "available": true, - "default": true - }, - { - "displayName": "High Performance", - "abbreviation": "HPF", - "description": "Faster than Standard. Uses 15000 RPM disk with Fast Cache.", - "id": "HIGHPERFORMANCE", - "available": true, - "default": false - }, - { - "displayName": "Economy", - "abbreviation": "ECN", - "description": "Slower than Standard. Uses 7200 RPM disk without Fast Cache.", - "id": "ECONOMY", - "available": true, - "default": false - } - ], - "cpuSpeed": [ - { - "displayName": "Standard", - "description": "Standard CPU Speed", - "id": "STANDARD", - "available": true, - "default": true - }, - { - "displayName": "High Performance", - "description": "Faster and more consistent than Standard. Suitable for applications that are more CPU intensive.", - "id": "HIGHPERFORMANCE", - "available": true, - "default": false - } - ], - "property": [ - { - "name": "MIN_DISK_SIZE_GB", - "value": "10" - }, - { - "name": "MAX_DISK_SIZE_GB", - "value": "1000" - }, - { - "name": "MAX_TOTAL_ADDITIONAL_STORAGE_GB", - "value": "14000" - }, - { - "name": "MAX_TOTAL_IMAGE_STORAGE_GB", - "value": "2600" - }, - { - "name": "MAX_CPU_COUNT", - "value": "32" - }, - { - "name": "MIN_MEMORY_GB", - "value": "1" - }, - { - "name": "MAX_MEMORY_GB", - "value": "256" - }, - { - "name": "VMWARE_HARDWARE_VERSION", - "value": "vmx-10" - }, - { - "name": "VLAN_SECURITY_GROUPS_ENABLED", - "value": "false" - } - ], - "type": "VMWARE", - "maintenanceStatus": "NORMAL" - }, - "backup": { - "property": [], - "type": "COMMVAULT", - "maintenanceStatus": "NORMAL" - }, - "consoleAccess": { - "property": [], - "maintenanceStatus": "NORMAL" - }, - "monitoring": { - "property": [], - "maintenanceStatus": "NORMAL" - }, - "id": "NA9", - "type": "MCP 2.0" } ], "pageNumber": 1, - "pageCount": 2, - "totalCount": 2, + "pageCount": 1, + "totalCount": 1, "pageSize": 250 } \ No newline at end of file
