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 @@
       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());
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);
+   }
+}
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
