You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by ad...@apache.org on 2014/11/04 00:21:26 UTC

[05/14] JCLOUDS-750 Convert GoogleComputeEngine to AutoValue + general cleanup.

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiExpectTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiExpectTest.java
index 4e66f85..4515233 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiExpectTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiExpectTest.java
@@ -30,7 +30,7 @@ import java.net.URI;
 import javax.ws.rs.core.MediaType;
 
 import org.jclouds.googlecomputeengine.domain.Instance;
-import org.jclouds.googlecomputeengine.domain.InstanceTemplate;
+import org.jclouds.googlecomputeengine.domain.templates.InstanceTemplate;
 import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiExpectTest;
 import org.jclouds.googlecomputeengine.options.AttachDiskOptions;
 import org.jclouds.googlecomputeengine.options.AttachDiskOptions.DiskMode;
@@ -38,35 +38,32 @@ import org.jclouds.googlecomputeengine.options.AttachDiskOptions.DiskType;
 import org.jclouds.googlecomputeengine.parse.ParseInstanceListTest;
 import org.jclouds.googlecomputeengine.parse.ParseInstanceSerialOutputTest;
 import org.jclouds.googlecomputeengine.parse.ParseInstanceTest;
-import org.jclouds.googlecomputeengine.parse.ParseOperationTest;
+import org.jclouds.googlecomputeengine.parse.ParseZoneOperationTest;
 import org.jclouds.http.HttpRequest;
 import org.jclouds.http.HttpResponse;
 import org.jclouds.rest.ResourceNotFoundException;
 import org.testng.annotations.Test;
 
+import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.ImmutableSet;
 
-@Test(groups = "unit")
+@Test(groups = "unit", testName = "InstanceApiExpectTest")
 public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
 
    public static final HttpRequest GET_INSTANCE_REQUEST = HttpRequest
            .builder()
            .method("GET")
-           .endpoint("https://www.googleapis" +
-                   ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1")
+           .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1")
            .addHeader("Accept", "application/json")
            .addHeader("Authorization", "Bearer " + TOKEN).build();
 
-
    public static final HttpResponse GET_INSTANCE_RESPONSE = HttpResponse.builder().statusCode(200)
            .payload(staticPayloadFromResource("/instance_get.json")).build();
 
    public static final HttpRequest LIST_INSTANCES_REQUEST = HttpRequest
            .builder()
            .method("GET")
-           .endpoint("https://www.googleapis" +
-                   ".com/compute/v1/projects/myproject/zones/us-central1-a/instances")
+           .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances")
            .addHeader("Accept", "application/json")
            .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -76,8 +73,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
    public static final HttpRequest LIST_CENTRAL1B_INSTANCES_REQUEST = HttpRequest
            .builder()
            .method("GET")
-           .endpoint("https://www.googleapis" +
-                   ".com/compute/v1/projects/myproject/zones/us-central1-b/instances")
+           .endpoint(BASE_URL + "/myproject/zones/us-central1-b/instances")
            .addHeader("Accept", "application/json")
            .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -111,8 +107,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest get = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1/serialPort")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1/serialPort")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -130,7 +125,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest insert = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .payload(payloadFromResourceWithContentType("/instance_insert_simple.json", MediaType.APPLICATION_JSON))
@@ -142,18 +137,17 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
               TOKEN_RESPONSE, insert,
               CREATE_INSTANCE_RESPONSE)).getInstanceApi("myproject");
 
-      InstanceTemplate options = InstanceTemplate.builder().forMachineType("us-central1-a/n1-standard-1")
-              .addNetworkInterface(URI.create("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/global/networks/default"));
+      InstanceTemplate options = new InstanceTemplate().machineTypeName("us-central1-a/n1-standard-1")
+              .addNetworkInterface(URI.create(BASE_URL + "/myproject/global/networks/default"));
 
-      assertEquals(api.createInZone("test-1", "us-central1-a", options), new ParseOperationTest().expected());
+      assertEquals(api.createInZone("test-1", "us-central1-a", options), new ParseZoneOperationTest().expected());
    }
 
    public void testInsertInstanceResponseIs2xxAllOptions() {
       HttpRequest insert = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .payload(payloadFromResourceWithContentType("/instance_insert.json", MediaType.APPLICATION_JSON))
@@ -167,26 +161,26 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
               requestForScopes(COMPUTE_SCOPE),
               TOKEN_RESPONSE, insert, insertInstanceResponse)).getInstanceApi("myproject");
 
-      InstanceTemplate options = InstanceTemplate.builder().forMachineType("us-central1-a/n1-standard-1")
-              .addNetworkInterface(URI.create("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/global/networks/default"), Instance.NetworkInterface.AccessConfig.Type.ONE_TO_ONE_NAT)
+      InstanceTemplate options = new InstanceTemplate().machineTypeName("us-central1-a/n1-standard-1")
+              .addNetworkInterface(
+                    URI.create(BASE_URL + "/myproject/global/networks/default"),
+                    Instance.NetworkInterface.AccessConfig.Type.ONE_TO_ONE_NAT)
               .description("desc")
-              .addDisk(InstanceTemplate.PersistentDisk.Mode.READ_WRITE,
-                      create("https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/disks/test"),
-                      true)
-              .addServiceAccount(Instance.ServiceAccount.builder().email("default").addScopes("myscope").build())
+              .addDisk(Instance.AttachedDisk.Mode.READ_WRITE,
+                    create(BASE_URL + "/myproject/zones/us-central1-a/disks/test"),
+                    true)
+              .addServiceAccount(Instance.ServiceAccount.create("default", ImmutableList.of("myscope")))
               .addMetadata("aKey", "aValue");
 
       assertEquals(api.createInZone("test-0", "us-central1-a", options),
-              new ParseOperationTest().expected());
+              new ParseZoneOperationTest().expected());
    }
 
    public void testDeleteInstanceResponseIs2xx() {
       HttpRequest delete = HttpRequest
               .builder()
               .method("DELETE")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -197,15 +191,14 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
               TOKEN_RESPONSE, delete, deleteResponse).getInstanceApi("myproject");
 
       assertEquals(api.deleteInZone("us-central1-a", "test-1"),
-              new ParseOperationTest().expected());
+              new ParseZoneOperationTest().expected());
    }
 
    public void testDeleteInstanceResponseIs4xx() {
       HttpRequest delete = HttpRequest
               .builder()
               .method("DELETE")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -231,8 +224,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest list = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -248,8 +240,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest setMetadata = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1/setMetadata")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1/setMetadata")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .payload(payloadFromResourceWithContentType("/instance_set_metadata.json", MediaType.APPLICATION_JSON))
@@ -262,7 +253,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
               TOKEN_RESPONSE, setMetadata, setMetadataResponse).getInstanceApi("myproject");
 
       assertEquals(api.setMetadataInZone("us-central1-a", "test-1", ImmutableMap.of("foo", "bar"), "efgh"),
-              new ParseOperationTest().expected());
+              new ParseZoneOperationTest().expected());
    }
 
    @Test(expectedExceptions = ResourceNotFoundException.class)
@@ -270,8 +261,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest setMetadata = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1/setMetadata")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1/setMetadata")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .payload(payloadFromResourceWithContentType("/instance_set_metadata.json", MediaType.APPLICATION_JSON))
@@ -289,8 +279,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest setTags = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1/setTags")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1/setTags")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .payload(payloadFromResourceWithContentType("/instance_set_tags.json", MediaType.APPLICATION_JSON))
@@ -302,8 +291,8 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       InstanceApi api = requestsSendResponses(requestForScopes(COMPUTE_SCOPE),
               TOKEN_RESPONSE, setTags, setTagsResponse).getInstanceApi("myproject");
 
-      assertEquals(api.setTagsInZone("us-central1-a", "test-1", ImmutableSet.of("foo", "bar"), "efgh"),
-              new ParseOperationTest().expected());
+      assertEquals(api.setTagsInZone("us-central1-a", "test-1", ImmutableList.of("foo", "bar"), "efgh"),
+              new ParseZoneOperationTest().expected());
    }
 
    @Test(expectedExceptions = ResourceNotFoundException.class)
@@ -311,8 +300,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest setTags = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1/setTags")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1/setTags")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .payload(payloadFromResourceWithContentType("/instance_set_tags.json", MediaType.APPLICATION_JSON))
@@ -323,15 +311,14 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       InstanceApi api = requestsSendResponses(requestForScopes(COMPUTE_SCOPE),
               TOKEN_RESPONSE, setTags, setTagsResponse).getInstanceApi("myproject");
 
-      api.setTagsInZone("us-central1-a", "test-1", ImmutableSet.of("foo", "bar"), "efgh");
+      api.setTagsInZone("us-central1-a", "test-1", ImmutableList.of("foo", "bar"), "efgh");
    }
 
    public void testResetInstanceResponseIs2xx() {
       HttpRequest reset = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1/reset")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1/reset")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -342,7 +329,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
               TOKEN_RESPONSE, reset, resetResponse).getInstanceApi("myproject");
 
       assertEquals(api.resetInZone("us-central1-a", "test-1"),
-              new ParseOperationTest().expected());
+              new ParseZoneOperationTest().expected());
    }
 
    @Test(expectedExceptions = ResourceNotFoundException.class)
@@ -350,8 +337,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest reset = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1/reset")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1/reset")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -367,8 +353,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest attach = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1/attachDisk")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1/attachDisk")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .payload(payloadFromResourceWithContentType("/instance_attach_disk.json", MediaType.APPLICATION_JSON))
@@ -383,9 +368,9 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       assertEquals(api.attachDiskInZone("us-central1-a", "test-1",
               new AttachDiskOptions()
                       .mode(DiskMode.READ_ONLY)
-                      .source(URI.create("https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/disks/testimage1"))
+                      .source(URI.create(BASE_URL + "/myproject/zones/us-central1-a/disks/testimage1"))
                       .type(DiskType.PERSISTENT)),
-              new ParseOperationTest().expected());
+              new ParseZoneOperationTest().expected());
    }
 
    @Test(expectedExceptions = ResourceNotFoundException.class)
@@ -393,8 +378,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest attach = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1/attachDisk")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1/attachDisk")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .payload(payloadFromResourceWithContentType("/instance_attach_disk.json", MediaType.APPLICATION_JSON))
@@ -408,7 +392,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       api.attachDiskInZone("us-central1-a", "test-1",
               new AttachDiskOptions()
                       .mode(DiskMode.READ_ONLY)
-                      .source(URI.create("https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/disks/testimage1"))
+                      .source(URI.create(BASE_URL + "/myproject/zones/us-central1-a/disks/testimage1"))
                       .type(DiskType.PERSISTENT));
 
    }
@@ -417,9 +401,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest detach = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1/detachDisk" +
-                      "?deviceName=test-disk-1")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1/detachDisk?deviceName=test-disk-1")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .build();
@@ -431,7 +413,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
               TOKEN_RESPONSE, detach, detachResponse).getInstanceApi("myproject");
 
       assertEquals(api.detachDiskInZone("us-central1-a", "test-1", "test-disk-1"),
-              new ParseOperationTest().expected());
+              new ParseZoneOperationTest().expected());
    }
 
    @Test(expectedExceptions = ResourceNotFoundException.class)
@@ -439,9 +421,7 @@ public class InstanceApiExpectTest extends BaseGoogleComputeEngineApiExpectTest
       HttpRequest detach = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/instances/test-1/detachDisk" +
-                      "?deviceName=test-disk-1")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/instances/test-1/detachDisk?deviceName=test-disk-1")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .build();

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java
index 13af8f2..f799948 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java
@@ -23,15 +23,13 @@ import static org.testng.Assert.assertTrue;
 import java.net.URI;
 import java.util.List;
 import java.util.Properties;
-import java.util.Set;
 
 import org.jclouds.collect.PagedIterable;
 import org.jclouds.googlecomputeengine.GoogleComputeEngineApi;
 import org.jclouds.googlecomputeengine.domain.Image;
 import org.jclouds.googlecomputeengine.domain.Instance;
 import org.jclouds.googlecomputeengine.domain.Instance.AttachedDisk;
-import org.jclouds.googlecomputeengine.domain.Instance.PersistentAttachedDisk;
-import org.jclouds.googlecomputeengine.domain.InstanceTemplate;
+import org.jclouds.googlecomputeengine.domain.templates.InstanceTemplate;
 import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest;
 import org.jclouds.googlecomputeengine.options.AttachDiskOptions;
 import org.jclouds.googlecomputeengine.options.AttachDiskOptions.DiskMode;
@@ -42,8 +40,8 @@ import org.testng.annotations.AfterClass;
 import org.testng.annotations.Test;
 
 import com.google.common.base.Predicate;
+import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Iterables;
 import com.google.common.collect.Lists;
 import com.google.inject.Module;
@@ -58,7 +56,7 @@ public class InstanceApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
    private static final String IPV4_RANGE = "10.0.0.0/8";
    private static final String METADATA_ITEM_KEY = "instanceLiveTestTestProp";
    private static final String METADATA_ITEM_VALUE = "instanceLiveTestTestValue";
-   private static final Set<String> TAGS = ImmutableSet.of("instance-live-test-tag1", "instance-live-test-tag2");
+   private static final List<String> TAGS = ImmutableList.of("instance-live-test-tag1", "instance-live-test-tag2");
    private static final String ATTACH_DISK_NAME = "instance-api-live-test-attach-disk";
    private static final String ATTACH_DISK_DEVICE_NAME = "attach-disk-1";
 
@@ -77,21 +75,21 @@ public class InstanceApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
                            @Override
                            public boolean apply(Image input) {
                               // filter out all deprecated images
-                              return !(input.getDeprecated().isPresent() && input.getDeprecated().get().getState().isPresent());
+                              return !(input.deprecated() != null && input.deprecated().state() != null);
                            }
                         })
                         .first()
                         .get()
-                        .getSelfLink();
-      instance = InstanceTemplate.builder()
-              .forMachineType(getDefaultMachineTypeUrl(userProject.get()))
+                        .selfLink();
+      instance = new InstanceTemplate()
+              .machineType(getDefaultMachineTypeUrl(userProject.get()))
               .addNetworkInterface(getNetworkUrl(userProject.get(), INSTANCE_NETWORK_NAME),
                                    Instance.NetworkInterface.AccessConfig.Type.ONE_TO_ONE_NAT)
               .addMetadata("mykey", "myvalue")
               .description("a description")
-              .addDisk(InstanceTemplate.PersistentDisk.Mode.READ_WRITE, getDiskUrl(userProject.get(), BOOT_DISK_NAME),
+              .addDisk(Instance.AttachedDisk.Mode.READ_WRITE, getDiskUrl(userProject.get(), BOOT_DISK_NAME),
                        null, true, true)
-              .addDisk(InstanceTemplate.PersistentDisk.Mode.READ_WRITE, getDiskUrl(userProject.get(), DISK_NAME))
+              .addDisk(Instance.AttachedDisk.Mode.READ_WRITE, getDiskUrl(userProject.get(), DISK_NAME))
               .image(imageUri);
 
       return api;
@@ -112,7 +110,7 @@ public class InstanceApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
       assertGlobalOperationDoneSucessfully(api.getNetworkApi(userProject.get()).createInIPv4Range
               (INSTANCE_NETWORK_NAME, IPV4_RANGE), TIME_WAIT);
 
-      DiskCreationOptions diskCreationOptions = new DiskCreationOptions().sourceImage(instance.getImage());
+      DiskCreationOptions diskCreationOptions = new DiskCreationOptions().sourceImage(instance.image());
       assertZoneOperationDoneSucessfully(api.getDiskApi(userProject.get())
                                         .createInZone(BOOT_DISK_NAME, DEFAULT_DISK_SIZE_GB, DEFAULT_ZONE_NAME, diskCreationOptions),
                                          TIME_WAIT);
@@ -138,28 +136,28 @@ public class InstanceApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
       Instance originalInstance = api().getInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME);
       assertZoneOperationDoneSucessfully(api().setMetadataInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME,
               ImmutableMap.of(METADATA_ITEM_KEY, METADATA_ITEM_VALUE),
-              originalInstance.getMetadata().getFingerprint()),
+              originalInstance.metadata().fingerprint()),
               TIME_WAIT);
 
       Instance modifiedInstance = api().getInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME);
 
-      assertTrue(modifiedInstance.getMetadata().getItems().containsKey(METADATA_ITEM_KEY));
-      assertEquals(modifiedInstance.getMetadata().getItems().get(METADATA_ITEM_KEY),
+      assertTrue(modifiedInstance.metadata().items().containsKey(METADATA_ITEM_KEY));
+      assertEquals(modifiedInstance.metadata().items().get(METADATA_ITEM_KEY),
               METADATA_ITEM_VALUE);
-      assertNotNull(modifiedInstance.getMetadata().getFingerprint());
+      assertNotNull(modifiedInstance.metadata().fingerprint());
    }
 
    @Test(groups = "live", dependsOnMethods = "testListInstance")
    public void testSetTagsForInstance() {
       Instance originalInstance = api().getInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME);
       assertZoneOperationDoneSucessfully(api().setTagsInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME, TAGS,
-              originalInstance.getTags().getFingerprint()),
+              originalInstance.tags().fingerprint()),
               TIME_WAIT);
 
       Instance modifiedInstance = api().getInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME);
 
-      assertTrue(modifiedInstance.getTags().getItems().containsAll(TAGS));
-      assertNotNull(modifiedInstance.getTags().getFingerprint());
+      assertTrue(modifiedInstance.tags().items().containsAll(TAGS));
+      assertNotNull(modifiedInstance.tags().fingerprint());
    }
 
    @Test(groups = "live", dependsOnMethods = "testSetMetadataForInstance")
@@ -176,14 +174,13 @@ public class InstanceApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
 
       Instance modifiedInstance = api().getInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME);
 
-      assertTrue(modifiedInstance.getDisks().size() > originalInstance.getDisks().size());
-      assertTrue(Iterables.any(modifiedInstance.getDisks(), new Predicate<AttachedDisk>() {
+      assertTrue(modifiedInstance.disks().size() > originalInstance.disks().size());
+      assertTrue(Iterables.any(modifiedInstance.disks(), new Predicate<AttachedDisk>() {
 
          @Override
          public boolean apply(AttachedDisk disk) {
-            return disk instanceof PersistentAttachedDisk &&
-                   ((PersistentAttachedDisk) disk).getDeviceName().isPresent() &&
-                   ((PersistentAttachedDisk) disk).getDeviceName().get().equals(ATTACH_DISK_DEVICE_NAME);
+            return disk.type() == AttachedDisk.Type.PERSISTENT &&
+                  ATTACH_DISK_DEVICE_NAME.equals(disk.deviceName());
          }
       }));
    }
@@ -196,7 +193,7 @@ public class InstanceApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
 
       Instance modifiedInstance = api().getInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME);
 
-      assertTrue(modifiedInstance.getDisks().size() < originalInstance.getDisks().size());
+      assertTrue(modifiedInstance.disks().size() < originalInstance.disks().size());
 
       assertZoneOperationDoneSucessfully(diskApi().deleteInZone(DEFAULT_ZONE_NAME, ATTACH_DISK_NAME), TIME_WAIT);
    }
@@ -234,8 +231,8 @@ public class InstanceApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
    }
 
    private void assertInstanceEquals(Instance result, InstanceTemplate expected) {
-      assertEquals(result.getName(), expected.getName());
-      assertEquals(result.getMetadata().getItems(), expected.getMetadata());
+      assertEquals(result.name(), expected.name());
+      assertEquals(result.metadata().items(), expected.metadata());
    }
 
    @AfterClass(groups = { "integration", "live" })

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiExpectTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiExpectTest.java
index 31bfdea..dc829b2 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiExpectTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiExpectTest.java
@@ -28,13 +28,13 @@ import org.jclouds.http.HttpRequest;
 import org.jclouds.http.HttpResponse;
 import org.testng.annotations.Test;
 
-@Test(groups = "unit")
+@Test(groups = "unit", testName = "MachineTypeApiExpectTest")
 public class MachineTypeApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
 
    public static final HttpRequest LIST_MACHINE_TYPES_REQUEST = HttpRequest
            .builder()
            .method("GET")
-           .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/machineTypes")
+           .endpoint(BASE_URL + "/myproject/zones/us-central1-a/machineTypes")
            .addHeader("Accept", "application/json")
            .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -46,7 +46,7 @@ public class MachineTypeApiExpectTest extends BaseGoogleComputeEngineApiExpectTe
    public static final HttpRequest LIST_CENTRAL1B_MACHINE_TYPES_REQUEST = HttpRequest
            .builder()
            .method("GET")
-           .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-b/machineTypes")
+           .endpoint(BASE_URL + "/myproject/zones/us-central1-b/machineTypes")
            .addHeader("Accept", "application/json")
            .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -59,8 +59,7 @@ public class MachineTypeApiExpectTest extends BaseGoogleComputeEngineApiExpectTe
       HttpRequest get = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/machineTypes/n1-standard-1")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/machineTypes/n1-standard-1")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -78,8 +77,7 @@ public class MachineTypeApiExpectTest extends BaseGoogleComputeEngineApiExpectTe
       HttpRequest get = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/zones/us-central1-a/machineTypes/n1-standard-1")
+              .endpoint(BASE_URL + "/myproject/zones/us-central1-a/machineTypes/n1-standard-1")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java
index 2e43eab..00f3acb 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java
@@ -32,7 +32,6 @@ import org.jclouds.googlecomputeengine.options.ListOptions;
 import org.testng.annotations.Test;
 
 import com.google.common.collect.Iterables;
-import com.google.common.collect.Lists;
 
 public class MachineTypeApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
 
@@ -52,7 +51,7 @@ public class MachineTypeApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
       assertTrue(pageIterator.hasNext());
 
       IterableWithMarker<MachineType> singlePageIterator = pageIterator.next();
-      List<MachineType> machineTypeAsList = Lists.newArrayList(singlePageIterator);
+      List<MachineType> machineTypeAsList = singlePageIterator.toList();
 
       assertSame(machineTypeAsList.size(), 1);
 
@@ -62,12 +61,12 @@ public class MachineTypeApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
 
    @Test(groups = "live", dependsOnMethods = "testListMachineType")
    public void testGetMachineType() {
-      MachineType machineType = api().getInZone(DEFAULT_ZONE_NAME, this.machineType.getName());
+      MachineType machineType = api().getInZone(DEFAULT_ZONE_NAME, this.machineType.name());
       assertNotNull(machineType);
       assertMachineTypeEquals(machineType, this.machineType);
    }
 
    private void assertMachineTypeEquals(MachineType result, MachineType expected) {
-      assertEquals(result.getName(), expected.getName());
+      assertEquals(result.name(), expected.name());
    }
 }

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiExpectTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiExpectTest.java
index 69852f1..2f0d7a0 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiExpectTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiExpectTest.java
@@ -32,13 +32,13 @@ import org.jclouds.http.HttpRequest;
 import org.jclouds.http.HttpResponse;
 import org.testng.annotations.Test;
 
-@Test(groups = "unit")
+@Test(groups = "unit", testName = "NetworkApiExpectTest")
 public class NetworkApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
 
    public static final HttpRequest GET_NETWORK_REQUEST = HttpRequest
            .builder()
            .method("GET")
-           .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/global/networks/jclouds-test")
+           .endpoint(BASE_URL + "/myproject/global/networks/jclouds-test")
            .addHeader("Accept", "application/json")
            .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -58,7 +58,7 @@ public class NetworkApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
       HttpRequest get = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/global/networks/jclouds-test")
+              .endpoint(BASE_URL + "/myproject/global/networks/jclouds-test")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -74,7 +74,7 @@ public class NetworkApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
       HttpRequest insert = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/global/networks")
+              .endpoint(BASE_URL + "/myproject/global/networks")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .payload(payloadFromResourceWithContentType("/network_insert.json", MediaType.APPLICATION_JSON))
@@ -94,8 +94,7 @@ public class NetworkApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
       HttpRequest delete = HttpRequest
               .builder()
               .method("DELETE")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/global/networks/jclouds-test")
+              .endpoint(BASE_URL + "/myproject/global/networks/jclouds-test")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -113,8 +112,7 @@ public class NetworkApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
       HttpRequest delete = HttpRequest
               .builder()
               .method("DELETE")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/global/networks/jclouds-test")
+              .endpoint(BASE_URL + "/myproject/global/networks/jclouds-test")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -130,8 +128,7 @@ public class NetworkApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
       HttpRequest list = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/global/networks")
+              .endpoint(BASE_URL + "/myproject/global/networks")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -149,8 +146,7 @@ public class NetworkApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
       HttpRequest list = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/global/networks")
+              .endpoint(BASE_URL + "/myproject/global/networks")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java
index 94d1fc5..2a336ee 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java
@@ -77,8 +77,7 @@ public class NetworkApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
    }
 
    private void assertNetworkEquals(Network result) {
-      assertEquals(result.getName(), NETWORK_NAME);
-      assertEquals(result.getIPv4Range(), IPV4_RANGE);
+      assertEquals(result.name(), NETWORK_NAME);
+      assertEquals(result.rangeIPv4(), IPV4_RANGE);
    }
-
 }

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiExpectTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiExpectTest.java
index e003695..cda6864 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiExpectTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiExpectTest.java
@@ -24,17 +24,17 @@ import javax.ws.rs.core.MediaType;
 import org.jclouds.googlecomputeengine.GoogleComputeEngineConstants;
 import org.jclouds.googlecomputeengine.domain.Metadata;
 import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiExpectTest;
+import org.jclouds.googlecomputeengine.parse.ParseGlobalOperationTest;
 import org.jclouds.googlecomputeengine.parse.ParseMetadataTest;
-import org.jclouds.googlecomputeengine.parse.ParseOperationTest;
 import org.jclouds.googlecomputeengine.parse.ParseProjectTest;
 import org.jclouds.http.HttpRequest;
 import org.jclouds.http.HttpResponse;
 import org.testng.annotations.Test;
 
-@Test(groups = "unit")
+@Test(groups = "unit", testName = "ProjectApiExpectTest")
 public class ProjectApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
 
-   public static final String PROJECTS_URL_PREFIX = "https://www.googleapis.com/compute/v1/projects";
+   public static final String PROJECTS_URL_PREFIX = BASE_URL + "";
 
    public static final HttpRequest GET_PROJECT_REQUEST = HttpRequest
            .builder()
@@ -88,8 +88,8 @@ public class ProjectApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
               TOKEN_RESPONSE, setMetadata,
               setMetadataResponse).getProjectApi();
       Metadata expected = new ParseMetadataTest().expected();
-      assertEquals(api.setCommonInstanceMetadata("myproject", expected.getItems(), expected.getFingerprint()),
-              new ParseOperationTest().expected());
+      assertEquals(api.setCommonInstanceMetadata("myproject", expected.items(), expected.fingerprint()),
+              new ParseGlobalOperationTest().expected());
    }
 
 }

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiLiveTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiLiveTest.java
index 150b58c..45c180d 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiLiveTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiLiveTest.java
@@ -16,7 +16,6 @@
  */
 package org.jclouds.googlecomputeengine.features;
 
-
 import static com.google.common.base.Predicates.equalTo;
 import static com.google.common.base.Predicates.not;
 import static org.testng.Assert.assertEquals;
@@ -53,8 +52,8 @@ public class ProjectApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
    public void testGetProjectWhenExists() {
       this.project = projectApi().get(userProject.get());
       assertNotNull(project);
-      assertNotNull(project.getId());
-      assertNotNull(project.getName());
+      assertNotNull(project.id());
+      assertNotNull(project.name());
    }
 
    @Test(groups = "live")
@@ -65,17 +64,17 @@ public class ProjectApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
 
    @Test(groups = "live", dependsOnMethods = "testGetProjectWhenExists")
    public void addItemToMetadata() {
-      this.initialMetadataSize = project.getCommonInstanceMetadata().getItems().size();
-      this.initialFingerprint = this.project.getCommonInstanceMetadata().getFingerprint();
+      this.initialMetadataSize = project.commonInstanceMetadata().items().size();
+      this.initialFingerprint = this.project.commonInstanceMetadata().fingerprint();
       assertGlobalOperationDoneSucessfully(addItemToMetadata(projectApi(), userProject.get(), METADATA_ITEM_KEY,
               METADATA_ITEM_VALUE), 20);
       this.project = projectApi().get(userProject.get());
       assertNotNull(project);
-      assertTrue(this.project.getCommonInstanceMetadata().getItems().containsKey(METADATA_ITEM_KEY),
+      assertTrue(this.project.commonInstanceMetadata().items().containsKey(METADATA_ITEM_KEY),
               this.project.toString());
-      assertEquals(this.project.getCommonInstanceMetadata().getItems().get(METADATA_ITEM_KEY),
+      assertEquals(this.project.commonInstanceMetadata().items().get(METADATA_ITEM_KEY),
               METADATA_ITEM_VALUE);
-      assertNotNull(this.project.getCommonInstanceMetadata().getFingerprint());
+      assertNotNull(this.project.commonInstanceMetadata().fingerprint());
    }
 
    @Test(groups = "live", dependsOnMethods = "addItemToMetadata")
@@ -83,9 +82,9 @@ public class ProjectApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
       assertGlobalOperationDoneSucessfully(deleteItemFromMetadata(projectApi(), userProject.get(), METADATA_ITEM_KEY), 20);
       this.project = projectApi().get(userProject.get());
       assertNotNull(project);
-      assertFalse(project.getCommonInstanceMetadata().getItems().containsKey(METADATA_ITEM_KEY));
-      assertSame(this.project.getCommonInstanceMetadata().getItems().size(), initialMetadataSize);
-      assertEquals(this.project.getCommonInstanceMetadata().getFingerprint(), initialFingerprint);
+      assertFalse(project.commonInstanceMetadata().items().containsKey(METADATA_ITEM_KEY));
+      assertSame(this.project.commonInstanceMetadata().items().size(), initialMetadataSize);
+      assertEquals(this.project.commonInstanceMetadata().fingerprint(), initialFingerprint);
    }
 
    /**
@@ -98,10 +97,10 @@ public class ProjectApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
       Project project = projectApi.get(projectName);
       assertNotNull(project);
       ImmutableMap.Builder<String, String> metadataBuilder = ImmutableMap.builder();
-      metadataBuilder.putAll(project.getCommonInstanceMetadata().getItems());
+      metadataBuilder.putAll(project.commonInstanceMetadata().items());
       metadataBuilder.put(key, value);
       return projectApi.setCommonInstanceMetadata(projectName, metadataBuilder.build(),
-              project.getCommonInstanceMetadata().getFingerprint());
+              project.commonInstanceMetadata().fingerprint());
    }
 
    /**
@@ -114,9 +113,9 @@ public class ProjectApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
       Project project = projectApi.get(projectName);
       assertNotNull(project);
       ImmutableMap.Builder<String, String> metadataBuilder = ImmutableMap.builder();
-      metadataBuilder.putAll(Maps.filterKeys(project.getCommonInstanceMetadata().getItems(), not(equalTo(key))));
+      metadataBuilder.putAll(Maps.filterKeys(project.commonInstanceMetadata().items(), not(equalTo(key))));
       return projectApi.setCommonInstanceMetadata(projectName, metadataBuilder.build(),
-              project.getCommonInstanceMetadata().getFingerprint());
+              project.commonInstanceMetadata().fingerprint());
    }
 
 

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiExpectTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiExpectTest.java
index 548c704..b041647 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiExpectTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiExpectTest.java
@@ -28,10 +28,10 @@ import org.jclouds.http.HttpRequest;
 import org.jclouds.http.HttpResponse;
 import org.testng.annotations.Test;
 
-@Test(groups = "unit")
+@Test(groups = "unit", testName = "RegionApiExpectTest")
 public class RegionApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
 
-   public static final String REGIONS_URL_PREFIX = "https://www.googleapis.com/compute/v1/projects/myproject/regions";
+   public static final String REGIONS_URL_PREFIX = BASE_URL + "/myproject/regions";
 
    public static final HttpRequest GET_REGION_REQ = HttpRequest
            .builder()

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java
index 73d237c..6c47e4b 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java
@@ -32,7 +32,6 @@ import org.jclouds.googlecomputeengine.options.ListOptions;
 import org.testng.annotations.Test;
 
 import com.google.common.collect.Iterables;
-import com.google.common.collect.Lists;
 
 public class RegionApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
 
@@ -52,23 +51,21 @@ public class RegionApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
       assertTrue(pageIterator.hasNext());
 
       IterableWithMarker<Region> singlePageIterator = pageIterator.next();
-      List<Region> regionAsList = Lists.newArrayList(singlePageIterator);
+      List<Region> regionAsList = singlePageIterator.toList();
 
       assertSame(regionAsList.size(), 1);
 
       this.region = Iterables.getOnlyElement(regionAsList);
    }
 
-
    @Test(groups = "live", dependsOnMethods = "testListRegion")
    public void testGetRegion() {
-      Region region = api().get(this.region.getName());
+      Region region = api().get(this.region.name());
       assertNotNull(region);
       assertRegionEquals(region, this.region);
    }
 
    private void assertRegionEquals(Region result, Region expected) {
-      assertEquals(result.getName(), expected.getName());
+      assertEquals(result.name(), expected.name());
    }
-
 }

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiExpectTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiExpectTest.java
index a47c62b..83ef30a 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiExpectTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiExpectTest.java
@@ -22,26 +22,23 @@ import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertNull;
 import static org.testng.Assert.assertTrue;
 
-import java.net.URI;
-
-import org.jclouds.date.internal.SimpleDateFormatDateService;
 import org.jclouds.googlecomputeengine.domain.ListPage;
 import org.jclouds.googlecomputeengine.domain.Operation;
-import org.jclouds.googlecomputeengine.domain.Resource;
 import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiExpectTest;
 import org.jclouds.googlecomputeengine.options.ListOptions;
+import org.jclouds.googlecomputeengine.parse.ParseRegionOperationTest;
 import org.jclouds.http.HttpRequest;
 import org.jclouds.http.HttpResponse;
 import org.testng.annotations.Test;
 
-@Test(groups = "unit")
+import com.google.common.collect.ImmutableList;
+
+@Test(groups = "unit", testName = "RegionOperationApiExpectTest")
 public class RegionOperationApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
 
-   private static final String OPERATIONS_URL_PREFIX = "https://www.googleapis" +
-           ".com/compute/v1/projects/myproject/regions/us-central1/operations";
+   private static final String OPERATIONS_URL_PREFIX = BASE_URL + "/myproject/regions/us-central1/operations";
 
-   private static final String DELETE_OPERATIONS_URL_PREFIX = "https://www.googleapis" +
-           ".com/compute/v1/projects/myproject/regions/us-central1/operations";
+   private static final String DELETE_OPERATIONS_URL_PREFIX = BASE_URL + "/myproject/regions/us-central1/operations";
 
    public static final HttpRequest GET_OPERATION_REQUEST = HttpRequest
            .builder()
@@ -53,32 +50,12 @@ public class RegionOperationApiExpectTest extends BaseGoogleComputeEngineApiExpe
    public static final HttpResponse GET_OPERATION_RESPONSE = HttpResponse.builder().statusCode(200)
            .payload(staticPayloadFromResource("/region_operation.json")).build();
 
-   private Operation expected() {
-      SimpleDateFormatDateService dateService = new SimpleDateFormatDateService();
-      return Operation.builder().id("13053095055850848306")
-              .selfLink(URI.create("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/regions/us-central1/operations/operation-1354084865060-4cf88735faeb8" +
-                      "-bbbb12cb"))
-              .name("operation-1354084865060-4cf88735faeb8-bbbb12cb")
-              .targetLink(URI.create("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/regions/us-central1/addresses/test-address"))
-              .targetId("13053094017547040099")
-              .status(Operation.Status.DONE)
-              .user("user@developer.gserviceaccount.com")
-              .progress(100)
-              .insertTime(dateService.iso8601DateParse("2012-11-28T06:41:05.060"))
-              .startTime(dateService.iso8601DateParse("2012-11-28T06:41:05.142"))
-              .endTime(dateService.iso8601DateParse("2012-11-28T06:41:06.142"))
-              .operationType("insert")
-              .region(URI.create("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1"))
-              .build();
-   }
-
    private ListPage<Operation> expectedList() {
-      return ListPage.<Operation>builder()
-              .kind(Resource.Kind.OPERATION_LIST)
-              .addItem(expected())
-              .build();
+      return ListPage.create( //
+            ImmutableList.of(new ParseRegionOperationTest().expected()), // items
+            null, // nextPageToken
+            null // prefixes
+      );
    }
 
    public void testGetOperationResponseIs2xx() throws Exception {
@@ -87,7 +64,7 @@ public class RegionOperationApiExpectTest extends BaseGoogleComputeEngineApiExpe
               TOKEN_RESPONSE, GET_OPERATION_REQUEST, GET_OPERATION_RESPONSE).getRegionOperationApi("myproject");
 
       assertEquals(regionOperationApi.getInRegion("us-central1", "operation-1354084865060-4cf88735faeb8-bbbb12cb"),
-              expected());
+            new ParseRegionOperationTest().expected());
    }
 
    public void testGetOperationResponseIs4xx() throws Exception {

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiLiveTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiLiveTest.java
index a698aee..4031254 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiLiveTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiLiveTest.java
@@ -60,7 +60,7 @@ public class RegionOperationApiLiveTest extends BaseGoogleComputeEngineApiLiveTe
 
    @Test(groups = "live", dependsOnMethods = "testCreateOperations")
    public void testGetOperation() {
-      Operation operation = api().getInRegion(DEFAULT_REGION_NAME, addOperation.getName());
+      Operation operation = api().getInRegion(DEFAULT_REGION_NAME, addOperation.name());
       assertNotNull(operation);
       assertOperationEquals(operation, this.addOperation);
    }
@@ -74,9 +74,7 @@ public class RegionOperationApiLiveTest extends BaseGoogleComputeEngineApiLiveTe
       // make sure that in spite of having only one result per page we get at least two results
       final AtomicInteger counter = new AtomicInteger();
       operations.firstMatch(new Predicate<IterableWithMarker<Operation>>() {
-
-         @Override
-         public boolean apply(IterableWithMarker<Operation> input) {
+         @Override public boolean apply(IterableWithMarker<Operation> input) {
             counter.addAndGet(Iterables.size(input));
             return counter.get() == 2;
          }
@@ -84,7 +82,7 @@ public class RegionOperationApiLiveTest extends BaseGoogleComputeEngineApiLiveTe
    }
 
    private void assertOperationEquals(Operation result, Operation expected) {
-      assertEquals(result.getName(), expected.getName());
+      assertEquals(result.name(), expected.name());
    }
 
 

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiExpectTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiExpectTest.java
index 0d64d14..c1a34f0 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiExpectTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiExpectTest.java
@@ -28,21 +28,21 @@ import javax.ws.rs.core.MediaType;
 
 import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiExpectTest;
 import org.jclouds.googlecomputeengine.options.RouteOptions;
-import org.jclouds.googlecomputeengine.parse.ParseOperationTest;
+import org.jclouds.googlecomputeengine.parse.ParseGlobalOperationTest;
 import org.jclouds.googlecomputeengine.parse.ParseRouteListTest;
 import org.jclouds.googlecomputeengine.parse.ParseRouteTest;
 import org.jclouds.http.HttpRequest;
 import org.jclouds.http.HttpResponse;
 import org.testng.annotations.Test;
 
-@Test(groups = "unit")
+@Test(groups = "unit", testName = "RouteApiExpectTest")
 public class RouteApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
 
    public void testGetRouteResponseIs2xx() throws Exception {
       HttpRequest get = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/global/routes/default-route-c99ebfbed0e1f375")
+              .endpoint(BASE_URL + "/myproject/global/routes/default-route-c99ebfbed0e1f375")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -60,7 +60,7 @@ public class RouteApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
       HttpRequest get = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/global/routes/default-route-c99ebfbed0e1f375")
+              .endpoint(BASE_URL + "/myproject/global/routes/default-route-c99ebfbed0e1f375")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -75,9 +75,8 @@ public class RouteApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
    public void testInsertRouteResponseIs2xx() {
       HttpRequest insert = HttpRequest
               .builder()
-
               .method("POST")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/global/routes")
+              .endpoint(BASE_URL + "/myproject/global/routes")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .payload(payloadFromResourceWithContentType("/route_insert.json", MediaType.APPLICATION_JSON))
@@ -91,22 +90,21 @@ public class RouteApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
               insertRouteResponse).getRouteApi("myproject");
 
       assertEquals(api.createInNetwork("default-route-c99ebfbed0e1f375",
-              URI.create("https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default"),
+              URI.create(BASE_URL + "/myproject/global/networks/default"),
               new RouteOptions().addTag("fooTag")
                       .addTag("barTag")
                       .description("Default route to the virtual network.")
               .destRange("10.240.0.0/16")
               .priority(1000)
-              .nextHopNetwork(URI.create("https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default"))
-      ), new ParseOperationTest().expected());
+              .nextHopNetwork(URI.create(BASE_URL + "/myproject/global/networks/default"))
+      ), new ParseGlobalOperationTest().expected());
    }
 
    public void testDeleteRouteResponseIs2xx() {
       HttpRequest delete = HttpRequest
               .builder()
               .method("DELETE")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/global/routes/default-route-c99ebfbed0e1f375")
+              .endpoint(BASE_URL + "/myproject/global/routes/default-route-c99ebfbed0e1f375")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -117,15 +115,14 @@ public class RouteApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
               TOKEN_RESPONSE, delete, deleteResponse).getRouteApi("myproject");
 
       assertEquals(api.delete("default-route-c99ebfbed0e1f375"),
-              new ParseOperationTest().expected());
+              new ParseGlobalOperationTest().expected());
    }
 
    public void testDeleteRouteResponseIs4xx() {
       HttpRequest delete = HttpRequest
               .builder()
               .method("DELETE")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/global/routes/default-route-c99ebfbed0e1f375")
+              .endpoint(BASE_URL + "/myproject/global/routes/default-route-c99ebfbed0e1f375")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -141,8 +138,7 @@ public class RouteApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
       HttpRequest list = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/global/routes")
+              .endpoint(BASE_URL + "/myproject/global/routes")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -160,8 +156,7 @@ public class RouteApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
       HttpRequest list = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis" +
-                      ".com/compute/v1/projects/myproject/global/routes")
+              .endpoint(BASE_URL + "/myproject/global/routes")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java
index a57a8c3..1e45789 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java
@@ -89,9 +89,8 @@ public class RouteApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
    }
 
    private void assertRouteEquals(Route result) {
-      assertEquals(result.getName(), ROUTE_NAME);
-      assertEquals(result.getDestRange(), DEST_RANGE);
-      assertEquals(result.getNextHopGateway().orNull(), getGatewayUrl(userProject.get(), DEFAULT_GATEWAY_NAME));
+      assertEquals(result.name(), ROUTE_NAME);
+      assertEquals(result.destRange(), DEST_RANGE);
+      assertEquals(result.nextHopGateway(), getGatewayUrl(userProject.get(), DEFAULT_GATEWAY_NAME));
    }
-
 }

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiExpectTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiExpectTest.java
index 9fcfde3..4a44ba2 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiExpectTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiExpectTest.java
@@ -28,10 +28,10 @@ import org.jclouds.http.HttpRequest;
 import org.jclouds.http.HttpResponse;
 import org.testng.annotations.Test;
 
-@Test(groups = "unit")
+@Test(groups = "unit", testName = "SnapshotApiExpectTest")
 public class SnapshotApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
 
-   public static final String SNAPSHOT_URL_PREFIX = "https://www.googleapis.com/compute/v1/projects/myproject/global/snapshots";
+   public static final String SNAPSHOT_URL_PREFIX = BASE_URL + "/myproject/global/snapshots";
 
    public static final HttpRequest GET_SNAPSHOT_REQ = HttpRequest
            .builder()

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiLiveTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiLiveTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiLiveTest.java
index cb8d330..c8e3d9b 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiLiveTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiLiveTest.java
@@ -58,7 +58,7 @@ public class SnapshotApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
    public void testGetSnapshot() {
       Snapshot snapshot = api().get(SNAPSHOT_NAME);
 
-      assertEquals(snapshot.getName(), SNAPSHOT_NAME);
+      assertEquals(snapshot.name(), SNAPSHOT_NAME);
       assertSnapshotEquals(snapshot);
    }
 
@@ -83,10 +83,8 @@ public class SnapshotApiLiveTest extends BaseGoogleComputeEngineApiLiveTest {
    }
 
    private void assertSnapshotEquals(Snapshot result) {
-      assertEquals(result.getName(), SNAPSHOT_NAME);
-      assertEquals(result.getSourceDisk().orNull(), disk.getSelfLink());
-      assertEquals(result.getSizeGb(), disk.getSizeGb());
+      assertEquals(result.name(), SNAPSHOT_NAME);
+      assertEquals(result.sourceDisk(), disk.selfLink());
+      assertEquals(result.diskSizeGb(), disk.sizeGb());
    }
-
-
 }

http://git-wip-us.apache.org/repos/asf/jclouds-labs-google/blob/b41b0d04/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/TargetPoolApiExpectTest.java
----------------------------------------------------------------------
diff --git a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/TargetPoolApiExpectTest.java b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/TargetPoolApiExpectTest.java
index 9bd0044..aa8aad7 100644
--- a/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/TargetPoolApiExpectTest.java
+++ b/google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/TargetPoolApiExpectTest.java
@@ -16,8 +16,16 @@
  */
 package org.jclouds.googlecomputeengine.features;
 
+import static org.jclouds.googlecomputeengine.GoogleComputeEngineConstants.COMPUTE_READONLY_SCOPE;
+import static org.jclouds.googlecomputeengine.GoogleComputeEngineConstants.COMPUTE_SCOPE;
+import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertTrue;
+import static org.testng.AssertJUnit.assertNull;
+
 import java.net.URI;
-import java.util.Set;
+import java.util.List;
+
+import javax.ws.rs.core.MediaType;
 
 import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiExpectTest;
 import org.jclouds.googlecomputeengine.options.ListOptions;
@@ -30,30 +38,24 @@ import org.jclouds.http.HttpResponse;
 import org.jclouds.rest.ResourceNotFoundException;
 import org.testng.annotations.Test;
 
-import com.google.common.collect.ImmutableSet;
-
-import javax.ws.rs.core.MediaType;
+import com.google.common.collect.ImmutableList;
 
-import static org.jclouds.googlecomputeengine.GoogleComputeEngineConstants.COMPUTE_READONLY_SCOPE;
-import static org.jclouds.googlecomputeengine.GoogleComputeEngineConstants.COMPUTE_SCOPE;
-import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertTrue;
-import static org.testng.AssertJUnit.assertNull;
-
-@Test(groups = "unit")
+@Test(groups = "unit", testName = "TargetPoolApiExpectTest")
 public class TargetPoolApiExpectTest extends BaseGoogleComputeEngineApiExpectTest {
 
-   private static final Set<URI> INSTANCES = ImmutableSet.of(URI.create("https://www.googleapis.com/compute/v1/projects/myproject/zones/europe-west1-a/instances/test"));
-   
-   private static final Set<URI> HEALTH_CHECKS = ImmutableSet.of(URI.create("https://www.googleapis.com/compute/v1/projects/myproject/global/httpHealthChecks/health-check-1"));
+   private static final List<URI> INSTANCES = ImmutableList
+         .of(URI.create(BASE_URL + "/myproject/zones/europe-west1-a/instances/test"));
+
+   private static final List<URI> HEALTH_CHECKS = ImmutableList
+         .of(URI.create(BASE_URL + "/myproject/global/httpHealthChecks/health-check-1"));
    
-   private static final URI TARGET_POOL = URI.create("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/targetPools/tpool");
+   private static final URI TARGET_POOL = URI.create(BASE_URL + "/myproject/regions/us-central1/targetPools/tpool");
    
    public void testGetTargetPoolResponseIs2xx() throws Exception {
       HttpRequest get = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/targetPools/test")
+              .endpoint(BASE_URL + "/myproject/regions/us-central1/targetPools/test")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -71,7 +73,7 @@ public class TargetPoolApiExpectTest extends BaseGoogleComputeEngineApiExpectTes
       HttpRequest get = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/targetPools/test")
+              .endpoint(BASE_URL + "/myproject/regions/us-central1/targetPools/test")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -87,7 +89,7 @@ public class TargetPoolApiExpectTest extends BaseGoogleComputeEngineApiExpectTes
       HttpRequest insert = HttpRequest
               .builder()
               .method("POST")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/targetPools")
+              .endpoint(BASE_URL + "/myproject/regions/us-central1/targetPools")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN)
               .payload(payloadFromResourceWithContentType("/targetpool_insert.json", MediaType.APPLICATION_JSON))
@@ -107,7 +109,7 @@ public class TargetPoolApiExpectTest extends BaseGoogleComputeEngineApiExpectTes
       HttpRequest delete = HttpRequest
               .builder()
               .method("DELETE")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/targetPools/test-targetPool")
+              .endpoint(BASE_URL + "/myproject/regions/us-central1/targetPools/test-targetPool")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -125,7 +127,7 @@ public class TargetPoolApiExpectTest extends BaseGoogleComputeEngineApiExpectTes
       HttpRequest delete = HttpRequest
               .builder()
               .method("DELETE")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/targetPools/test-targetPool")
+              .endpoint(BASE_URL + "/myproject/regions/us-central1/targetPools/test-targetPool")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -141,7 +143,7 @@ public class TargetPoolApiExpectTest extends BaseGoogleComputeEngineApiExpectTes
       HttpRequest list = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/targetPools")
+              .endpoint(BASE_URL + "/myproject/regions/us-central1/targetPools")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -160,7 +162,7 @@ public class TargetPoolApiExpectTest extends BaseGoogleComputeEngineApiExpectTes
       HttpRequest list = HttpRequest
               .builder()
               .method("GET")
-              .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/targetPools")
+              .endpoint(BASE_URL + "/myproject/regions/us-central1/targetPools")
               .addHeader("Accept", "application/json")
               .addHeader("Authorization", "Bearer " + TOKEN).build();
 
@@ -268,10 +270,10 @@ public class TargetPoolApiExpectTest extends BaseGoogleComputeEngineApiExpectTes
    }
    
    public void testSetBackupResponseIs2xx(){
-      HttpRequest setBackup = HttpRequest
+      HttpRequest SetBackup = HttpRequest
             .builder()
             .method("POST")
-            .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/targetPools/testpool/setBackup")
+            .endpoint(BASE_URL + "/myproject/regions/us-central1/targetPools/testpool/setBackup")
             .addHeader("Accept", "application/json")
             .addHeader("Authorization", "Bearer " + TOKEN)
             .payload(payloadFromResourceWithContentType("/targetpool_setbackup.json", MediaType.APPLICATION_JSON))
@@ -280,17 +282,17 @@ public class TargetPoolApiExpectTest extends BaseGoogleComputeEngineApiExpectTes
             .payload(payloadFromResource("/region_operation.json")).build();
 
       TargetPoolApi api = requestsSendResponses(requestForScopes(COMPUTE_SCOPE),
-            TOKEN_RESPONSE, setBackup, operationResponse).getTargetPoolApi("myproject", "us-central1");
+            TOKEN_RESPONSE, SetBackup, operationResponse).getTargetPoolApi("myproject", "us-central1");
 
-      assertEquals(api.setBackup("testpool", TARGET_POOL ),
+      assertEquals(api.setBackup("testpool", TARGET_POOL),
             new ParseRegionOperationTest().expected());
    }
    
    public void testSetBackupWithFailoverRatioResponseIs2xx(){
-      HttpRequest setBackup = HttpRequest
+      HttpRequest SetBackup = HttpRequest
             .builder()
             .method("POST")
-            .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/regions/"
+            .endpoint(BASE_URL + "/myproject/regions/"
                     + "us-central1/targetPools/testpool/setBackup?failoverRatio=0.5")
             .addHeader("Accept", "application/json")
             .addHeader("Authorization", "Bearer " + TOKEN)
@@ -300,19 +302,19 @@ public class TargetPoolApiExpectTest extends BaseGoogleComputeEngineApiExpectTes
             .payload(payloadFromResource("/region_operation.json")).build();
 
       TargetPoolApi api = requestsSendResponses(requestForScopes(COMPUTE_SCOPE),
-            TOKEN_RESPONSE, setBackup, operationResponse).getTargetPoolApi("myproject", "us-central1");
+            TOKEN_RESPONSE, SetBackup, operationResponse).getTargetPoolApi("myproject", "us-central1");
 
       Float failoverRatio = Float.valueOf("0.5");
-      assertEquals(api.setBackup("testpool", failoverRatio, TARGET_POOL ),
+      assertEquals(api.setBackup("testpool", failoverRatio, TARGET_POOL),
             new ParseRegionOperationTest().expected());
    }
    
    @Test(expectedExceptions = ResourceNotFoundException.class)
    public void testSetBackupResponseIs4xx() throws Exception {
-      HttpRequest setBackup = HttpRequest
+      HttpRequest SetBackup = HttpRequest
             .builder()
             .method("POST")
-            .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/targetPools/testpool/setBackup")
+            .endpoint(BASE_URL + "/myproject/regions/us-central1/targetPools/testpool/setBackup")
             .addHeader("Accept", "application/json")
             .addHeader("Authorization", "Bearer " + TOKEN)
             .payload(payloadFromResourceWithContentType("/targetpool_setbackup.json", MediaType.APPLICATION_JSON))
@@ -320,16 +322,16 @@ public class TargetPoolApiExpectTest extends BaseGoogleComputeEngineApiExpectTes
       HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build();
 
       TargetPoolApi api = requestsSendResponses(requestForScopes(COMPUTE_SCOPE),
-            TOKEN_RESPONSE, setBackup, operationResponse).getTargetPoolApi("myproject", "us-central1");
+            TOKEN_RESPONSE, SetBackup, operationResponse).getTargetPoolApi("myproject", "us-central1");
 
-      api.setBackup("testpool", TARGET_POOL );
+      api.setBackup("testpool", TARGET_POOL);
    }
    
    public HttpRequest makeGenericRequest(String method, String endpoint, String requestPayloadFile){
       HttpRequest request = HttpRequest
             .builder()
             .method(method)
-            .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/targetPools/test/" + endpoint)
+            .endpoint(BASE_URL + "/myproject/regions/us-central1/targetPools/test/" + endpoint)
             .addHeader("Accept", "application/json")
             .addHeader("Authorization", "Bearer " + TOKEN)
             .payload(payloadFromResourceWithContentType(requestPayloadFile, MediaType.APPLICATION_JSON))