http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java deleted file mode 100644 index 871f136..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java +++ /dev/null @@ -1,241 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.googlecomputeengine.features; - -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNotNull; -import static org.testng.Assert.assertTrue; - -import java.net.URI; -import java.util.List; -import java.util.Properties; - -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.internal.BaseGoogleComputeEngineApiLiveTest; -import org.jclouds.googlecomputeengine.options.AttachDiskOptions; -import org.jclouds.googlecomputeengine.options.AttachDiskOptions.DiskMode; -import org.jclouds.googlecomputeengine.options.AttachDiskOptions.DiskType; -import org.jclouds.googlecomputeengine.options.ListOptions; -import org.testng.annotations.AfterClass; -import org.testng.annotations.Test; - -import com.google.common.base.Predicate; -import com.google.common.collect.ImmutableMap; -import com.google.common.collect.Iterables; -import com.google.common.collect.Lists; -import com.google.inject.Module; - -@Test(groups = "live", testName = "InstanceApiLiveTest") -public class InstanceApiLiveTest extends BaseGoogleComputeEngineApiLiveTest { - - private static final String INSTANCE_NETWORK_NAME = "instance-api-live-test-network"; - private static final String INSTANCE_NAME = "instance-api-live-test-instance"; - private static final String BOOT_DISK_NAME = INSTANCE_NAME + "-boot-disk"; - private static final String DISK_NAME = "instance-live-test-disk"; - 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 String ATTACH_DISK_NAME = "instance-api-live-test-attach-disk"; - private static final String ATTACH_DISK_DEVICE_NAME = "attach-disk-1"; - - private static final int TIME_WAIT = 600; - - private InstanceTemplate instance; - - @Override - protected GoogleComputeEngineApi create(Properties props, Iterable<Module> modules) { - GoogleComputeEngineApi api = super.create(props, modules); - URI imageUri = api.getImageApiForProject("centos-cloud") - .list(new ListOptions.Builder().filter("name eq centos.*")) - .concat() - .filter(new Predicate<Image>() { - @Override - public boolean apply(Image input) { - // filter out all deprecated images - return !(input.getDeprecated().isPresent() && input.getDeprecated().get().getState().isPresent()); - } - }) - .first() - .get() - .getSelfLink(); - instance = InstanceTemplate.builder() - .forMachineType(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), - null, true, true) - .addDisk(InstanceTemplate.PersistentDisk.Mode.READ_WRITE, getDiskUrl(userProject.get(), DISK_NAME)) - .image(imageUri); - - return api; - } - - private InstanceApi api() { - return api.getInstanceApiForProject(userProject.get()); - } - - private DiskApi diskApi() { - return api.getDiskApiForProject(userProject.get()); - } - - @Test(groups = "live") - public void testInsertInstance() { - - // need to create the network first - assertGlobalOperationDoneSucessfully(api.getNetworkApiForProject(userProject.get()).createInIPv4Range - (INSTANCE_NETWORK_NAME, IPV4_RANGE), TIME_WAIT); - - - assertZoneOperationDoneSucessfully(api.getDiskApiForProject(userProject.get()) - .createFromImageInZone(instance.getImage().toString(), - BOOT_DISK_NAME, - DEFAULT_ZONE_NAME), - TIME_WAIT); - - - assertZoneOperationDoneSucessfully(diskApi().createInZone - ("instance-live-test-disk", 10, DEFAULT_ZONE_NAME), TIME_WAIT); - - assertZoneOperationDoneSucessfully(api().createInZone(INSTANCE_NAME, DEFAULT_ZONE_NAME, instance), TIME_WAIT); - - } - - @Test(groups = "live", dependsOnMethods = "testInsertInstance") - public void testGetInstance() { - - Instance instance = api().getInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME); - assertNotNull(instance); - assertInstanceEquals(instance, this.instance); - } - - @Test(groups = "live", dependsOnMethods = "testListInstance") - public void testSetMetadataForInstance() { - 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()), - 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), - METADATA_ITEM_VALUE); - assertNotNull(modifiedInstance.getMetadata().getFingerprint()); - - } - - @Test(groups = "live", dependsOnMethods = "testSetMetadataForInstance") - public void testAttachDiskToInstance() { - assertZoneOperationDoneSucessfully(diskApi().createInZone(ATTACH_DISK_NAME, 1, DEFAULT_ZONE_NAME), TIME_WAIT); - - Instance originalInstance = api().getInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME); - assertZoneOperationDoneSucessfully(api().attachDiskInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME, - new AttachDiskOptions().type(DiskType.PERSISTENT) - .source(getDiskUrl(userProject.get(), ATTACH_DISK_NAME)) - .mode(DiskMode.READ_ONLY) - .deviceName(ATTACH_DISK_DEVICE_NAME)), - TIME_WAIT); - - Instance modifiedInstance = api().getInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME); - - assertTrue(modifiedInstance.getDisks().size() > originalInstance.getDisks().size()); - assertTrue(Iterables.any(modifiedInstance.getDisks(), 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); - } - })); - } - - @Test(groups = "live", dependsOnMethods = "testAttachDiskToInstance") - public void testDetachDiskFromInstance() { - Instance originalInstance = api().getInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME); - assertZoneOperationDoneSucessfully(api().detachDiskInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME, - ATTACH_DISK_DEVICE_NAME), TIME_WAIT); - - Instance modifiedInstance = api().getInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME); - - assertTrue(modifiedInstance.getDisks().size() < originalInstance.getDisks().size()); - - assertZoneOperationDoneSucessfully(diskApi().deleteInZone(DEFAULT_ZONE_NAME, ATTACH_DISK_NAME), TIME_WAIT); - } - - @Test(groups = "live", dependsOnMethods = "testInsertInstance") - public void testListInstance() { - - PagedIterable<Instance> instances = api().listInZone(DEFAULT_ZONE_NAME, new ListOptions.Builder() - .filter("name eq " + INSTANCE_NAME)); - - List<Instance> instancesAsList = Lists.newArrayList(instances.concat()); - - assertEquals(instancesAsList.size(), 1); - - assertInstanceEquals(Iterables.getOnlyElement(instancesAsList), instance); - - } - - @Test(groups = "live", dependsOnMethods = "testDetachDiskFromInstance") - public void testResetInstance() { - assertZoneOperationDoneSucessfully(api().resetInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME), - TIME_WAIT); - } - - @Test(groups = "live", dependsOnMethods = "testResetInstance") - public void testDeleteInstance() { - - assertZoneOperationDoneSucessfully(api().deleteInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME), TIME_WAIT); - assertZoneOperationDoneSucessfully(api.getDiskApiForProject(userProject.get()).deleteInZone(DEFAULT_ZONE_NAME, DISK_NAME), - TIME_WAIT); - assertZoneOperationDoneSucessfully(api.getDiskApiForProject(userProject.get()).deleteInZone(DEFAULT_ZONE_NAME, BOOT_DISK_NAME), - TIME_WAIT); - assertGlobalOperationDoneSucessfully(api.getNetworkApiForProject(userProject.get()).delete - (INSTANCE_NETWORK_NAME), TIME_WAIT); - } - - private void assertInstanceEquals(Instance result, InstanceTemplate expected) { - assertEquals(result.getName(), expected.getName()); - assertEquals(result.getMetadata().getItems(), expected.getMetadata()); - } - - @AfterClass(groups = { "integration", "live" }) - protected void tearDownContext() { - try { - waitZoneOperationDone(api().deleteInZone(DEFAULT_ZONE_NAME, INSTANCE_NAME), TIME_WAIT); - waitZoneOperationDone(api.getDiskApiForProject(userProject.get()).deleteInZone(DEFAULT_ZONE_NAME, DISK_NAME), - TIME_WAIT); - waitZoneOperationDone(api.getDiskApiForProject(userProject.get()).deleteInZone(DEFAULT_ZONE_NAME, BOOT_DISK_NAME), - TIME_WAIT); - waitGlobalOperationDone(api.getNetworkApiForProject(userProject.get()).delete - (INSTANCE_NETWORK_NAME), TIME_WAIT); - } catch (Exception e) { - // we don't really care about any exception here, so just delete away. - } - } - -}
http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiExpectTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiExpectTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiExpectTest.java deleted file mode 100644 index 35dec08..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiExpectTest.java +++ /dev/null @@ -1,113 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.googlecomputeengine.features; - -import static org.jclouds.googlecomputeengine.GoogleComputeEngineConstants.COMPUTE_READONLY_SCOPE; -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNull; -import static org.testng.Assert.assertTrue; - -import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiExpectTest; -import org.jclouds.googlecomputeengine.parse.ParseMachineTypeListTest; -import org.jclouds.googlecomputeengine.parse.ParseMachineTypeTest; -import org.jclouds.http.HttpRequest; -import org.jclouds.http.HttpResponse; -import org.testng.annotations.Test; - -@Test(groups = "unit") -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") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - public static final HttpResponse LIST_MACHINE_TYPES_RESPONSE = HttpResponse.builder() - .statusCode(200) - .payload(staticPayloadFromResource("/machinetype_list.json")) - .build(); - - 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") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - public static final HttpResponse LIST_CENTRAL1B_MACHINE_TYPES_RESPONSE = HttpResponse.builder() - .statusCode(200) - .payload(staticPayloadFromResource("/machinetype_list_central1b.json")) - .build(); - - public void testGetMachineTypeResponseIs2xx() throws Exception { - HttpRequest get = HttpRequest - .builder() - .method("GET") - .endpoint("https://www.googleapis" + - ".com/compute/v1/projects/myproject/zones/us-central1-a/machineTypes/n1-standard-1") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/machinetype.json")).build(); - - MachineTypeApi machineTypeApi = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, get, operationResponse).getMachineTypeApiForProject("myproject"); - - assertEquals(machineTypeApi.getInZone("us-central1-a", "n1-standard-1"), - new ParseMachineTypeTest().expected()); - } - - public void testGetMachineTypeResponseIs4xx() throws Exception { - HttpRequest get = HttpRequest - .builder() - .method("GET") - .endpoint("https://www.googleapis" + - ".com/compute/v1/projects/myproject/zones/us-central1-a/machineTypes/n1-standard-1") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - MachineTypeApi machineTypeApi = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, get, operationResponse).getMachineTypeApiForProject("myproject"); - - assertNull(machineTypeApi.getInZone("us-central1-a", "n1-standard-1")); - } - - public void testListMachineTypeNoOptionsResponseIs2xx() throws Exception { - - MachineTypeApi machineTypeApi = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, LIST_MACHINE_TYPES_REQUEST, LIST_MACHINE_TYPES_RESPONSE).getMachineTypeApiForProject - ("myproject"); - - assertEquals(machineTypeApi.listFirstPageInZone("us-central1-a").toString(), - new ParseMachineTypeListTest().expected().toString()); - } - - public void testLisOperationWithPaginationOptionsResponseIs4xx() { - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - MachineTypeApi machineTypeApi = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, LIST_MACHINE_TYPES_REQUEST, operationResponse).getMachineTypeApiForProject("myproject"); - - assertTrue(machineTypeApi.listInZone("us-central1-a").concat().isEmpty()); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java deleted file mode 100644 index d9d00a1..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/MachineTypeApiLiveTest.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.googlecomputeengine.features; - -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNotNull; -import static org.testng.Assert.assertSame; -import static org.testng.Assert.assertTrue; - -import java.util.Iterator; -import java.util.List; - -import org.jclouds.collect.IterableWithMarker; -import org.jclouds.collect.PagedIterable; -import org.jclouds.googlecomputeengine.domain.MachineType; -import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; -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 { - - private MachineType machineType; - - private MachineTypeApi api() { - return api.getMachineTypeApiForProject(userProject.get()); - } - - @Test(groups = "live") - public void testListMachineType() { - - PagedIterable<MachineType> machineTypes = api().listInZone(DEFAULT_ZONE_NAME, new ListOptions.Builder() - .maxResults(1)); - - Iterator<IterableWithMarker<MachineType>> pageIterator = machineTypes.iterator(); - assertTrue(pageIterator.hasNext()); - - IterableWithMarker<MachineType> singlePageIterator = pageIterator.next(); - List<MachineType> machineTypeAsList = Lists.newArrayList(singlePageIterator); - - assertSame(machineTypeAsList.size(), 1); - - this.machineType = Iterables.getOnlyElement(machineTypeAsList); - } - - - @Test(groups = "live", dependsOnMethods = "testListMachineType") - public void testGetMachineType() { - MachineType machineType = api().getInZone(DEFAULT_ZONE_NAME, this.machineType.getName()); - assertNotNull(machineType); - assertMachineTypeEquals(machineType, this.machineType); - } - - private void assertMachineTypeEquals(MachineType result, MachineType expected) { - assertEquals(result.getName(), expected.getName()); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiExpectTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiExpectTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiExpectTest.java deleted file mode 100644 index 1b2d73b..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiExpectTest.java +++ /dev/null @@ -1,164 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.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 javax.ws.rs.core.MediaType; - -import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiExpectTest; -import org.jclouds.googlecomputeengine.parse.ParseNetworkListTest; -import org.jclouds.googlecomputeengine.parse.ParseNetworkTest; -import org.jclouds.googlecomputeengine.parse.ParseOperationTest; -import org.jclouds.http.HttpRequest; -import org.jclouds.http.HttpResponse; -import org.testng.annotations.Test; - -@Test(groups = "unit") -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") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - public static final HttpResponse GET_NETWORK_RESPONSE = HttpResponse.builder().statusCode(200) - .payload(staticPayloadFromResource("/network_get.json")).build(); - - public void testGetNetworkResponseIs2xx() throws Exception { - - NetworkApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, GET_NETWORK_REQUEST, GET_NETWORK_RESPONSE).getNetworkApiForProject("myproject"); - - assertEquals(api.get("jclouds-test"), - new ParseNetworkTest().expected()); - } - - public void testGetNetworkResponseIs4xx() throws Exception { - HttpRequest get = HttpRequest - .builder() - .method("GET") - .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/global/networks/jclouds-test") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - NetworkApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, get, operationResponse).getNetworkApiForProject("myproject"); - - assertNull(api.get("jclouds-test")); - } - - public void testInsertNetworkResponseIs2xx() { - HttpRequest insert = HttpRequest - .builder() - .method("POST") - .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/global/networks") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN) - .payload(payloadFromResourceWithContentType("/network_insert.json", MediaType.APPLICATION_JSON)) - .build(); - - HttpResponse insertNetworkResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/operation.json")).build(); - - NetworkApi api = requestsSendResponses(requestForScopes(COMPUTE_SCOPE), - TOKEN_RESPONSE, insert, - insertNetworkResponse).getNetworkApiForProject("myproject"); - - assertEquals(api.createInIPv4Range("test-network", "10.0.0.0/8"), new ParseOperationTest().expected()); - } - - public void testDeleteNetworkResponseIs2xx() { - HttpRequest delete = HttpRequest - .builder() - .method("DELETE") - .endpoint("https://www.googleapis" + - ".com/compute/v1/projects/myproject/global/networks/jclouds-test") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse deleteResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/operation.json")).build(); - - NetworkApi api = requestsSendResponses(requestForScopes(COMPUTE_SCOPE), - TOKEN_RESPONSE, delete, deleteResponse).getNetworkApiForProject("myproject"); - - assertEquals(api.delete("jclouds-test"), - new ParseOperationTest().expected()); - } - - public void testDeleteNetworkResponseIs4xx() { - HttpRequest delete = HttpRequest - .builder() - .method("DELETE") - .endpoint("https://www.googleapis" + - ".com/compute/v1/projects/myproject/global/networks/jclouds-test") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse deleteResponse = HttpResponse.builder().statusCode(404).build(); - - NetworkApi api = requestsSendResponses(requestForScopes(COMPUTE_SCOPE), - TOKEN_RESPONSE, delete, deleteResponse).getNetworkApiForProject("myproject"); - - assertNull(api.delete("jclouds-test")); - } - - public void testListNetworksResponseIs2xx() { - HttpRequest list = HttpRequest - .builder() - .method("GET") - .endpoint("https://www.googleapis" + - ".com/compute/v1/projects/myproject/global/networks") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/network_list.json")).build(); - - NetworkApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, list, operationResponse).getNetworkApiForProject("myproject"); - - assertEquals(api.listFirstPage().toString(), - new ParseNetworkListTest().expected().toString()); - } - - public void testListNetworksResponseIs4xx() { - HttpRequest list = HttpRequest - .builder() - .method("GET") - .endpoint("https://www.googleapis" + - ".com/compute/v1/projects/myproject/global/networks") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - NetworkApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, list, operationResponse).getNetworkApiForProject("myproject"); - - assertTrue(api.list().concat().isEmpty()); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java deleted file mode 100644 index 208ec1b..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/NetworkApiLiveTest.java +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.googlecomputeengine.features; - -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNotNull; - -import java.util.List; - -import org.jclouds.collect.PagedIterable; -import org.jclouds.googlecomputeengine.domain.Network; -import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; -import org.jclouds.googlecomputeengine.options.ListOptions; -import org.testng.annotations.Test; - -import com.google.common.collect.Iterables; -import com.google.common.collect.Lists; - -@Test(groups = "live", testName = "NetworkApiLiveTest") -public class NetworkApiLiveTest extends BaseGoogleComputeEngineApiLiveTest { - - private static final String NETWORK_NAME = "network-api-live-test-network"; - private static final String IPV4_RANGE = "10.0.0.0/8"; - private static final int TIME_WAIT = 10; - - private NetworkApi api() { - return api.getNetworkApiForProject(userProject.get()); - } - - @Test(groups = "live") - public void testInsertNetwork() { - - assertGlobalOperationDoneSucessfully(api().createInIPv4Range(NETWORK_NAME, IPV4_RANGE), TIME_WAIT); - - } - - @Test(groups = "live", dependsOnMethods = "testInsertNetwork") - public void testGetNetwork() { - - Network network = api().get(NETWORK_NAME); - assertNotNull(network); - assertNetworkEquals(network); - } - - @Test(groups = "live", dependsOnMethods = "testGetNetwork") - public void testListNetwork() { - - PagedIterable<Network> networks = api().list(new ListOptions.Builder() - .filter("name eq " + NETWORK_NAME)); - - List<Network> networksAsList = Lists.newArrayList(networks.concat()); - - assertEquals(networksAsList.size(), 1); - - assertNetworkEquals(Iterables.getOnlyElement(networksAsList)); - - } - - @Test(groups = "live", dependsOnMethods = "testListNetwork") - public void testDeleteNetwork() { - - assertGlobalOperationDoneSucessfully(api().delete(NETWORK_NAME), TIME_WAIT); - } - - private void assertNetworkEquals(Network result) { - assertEquals(result.getName(), NETWORK_NAME); - assertEquals(result.getIPv4Range(), IPV4_RANGE); - } - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiExpectTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiExpectTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiExpectTest.java deleted file mode 100644 index 45e9f6c..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiExpectTest.java +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.googlecomputeengine.features; - -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNull; - -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.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") -public class ProjectApiExpectTest extends BaseGoogleComputeEngineApiExpectTest { - - public static final String PROJECTS_URL_PREFIX = "https://www.googleapis.com/compute/v1/projects"; - - public static final HttpRequest GET_PROJECT_REQUEST = HttpRequest - .builder() - .method("GET") - .endpoint(PROJECTS_URL_PREFIX + "/myproject") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - public static final HttpResponse GET_PROJECT_RESPONSE = HttpResponse.builder().statusCode(200) - .payload(staticPayloadFromResource("/project.json")).build(); - - public void testGetProjectResponseIs2xx() throws Exception { - ProjectApi api = requestsSendResponses(requestForScopes(GoogleComputeEngineConstants.COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, GET_PROJECT_REQUEST, - GET_PROJECT_RESPONSE).getProjectApi(); - - assertEquals(api.get("myproject"), new ParseProjectTest().expected()); - } - - public void testGetProjectResponseIs4xx() throws Exception { - HttpRequest getProjectRequest = HttpRequest - .builder() - .method("GET") - .endpoint(PROJECTS_URL_PREFIX + "/myproject") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse getProjectResponse = HttpResponse.builder().statusCode(404).build(); - - ProjectApi api = requestsSendResponses(requestForScopes(GoogleComputeEngineConstants.COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, getProjectRequest, - getProjectResponse).getProjectApi(); - - assertNull(api.get("myproject")); - } - - public void testSetCommonInstanceMetadata() { - HttpRequest setMetadata = HttpRequest - .builder() - .method("POST") - .endpoint(PROJECTS_URL_PREFIX + "/myproject/setCommonInstanceMetadata") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN) - .payload(payloadFromResourceWithContentType("/metadata.json", MediaType.APPLICATION_JSON)) - .build(); - - HttpResponse setMetadataResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/global_operation.json")).build(); - - ProjectApi api = requestsSendResponses(requestForScopes(GoogleComputeEngineConstants.COMPUTE_SCOPE), - TOKEN_RESPONSE, setMetadata, - setMetadataResponse).getProjectApi(); - Metadata expected = new ParseMetadataTest().expected(); - assertEquals(api.setCommonInstanceMetadata("myproject", expected.getItems(), expected.getFingerprint()), - new ParseOperationTest().expected()); - } - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiLiveTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiLiveTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiLiveTest.java deleted file mode 100644 index 150b58c..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/ProjectApiLiveTest.java +++ /dev/null @@ -1,123 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.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; -import static org.testng.Assert.assertFalse; -import static org.testng.Assert.assertNotNull; -import static org.testng.Assert.assertNull; -import static org.testng.Assert.assertSame; -import static org.testng.Assert.assertTrue; - -import org.jclouds.googlecomputeengine.domain.Operation; -import org.jclouds.googlecomputeengine.domain.Project; -import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; -import org.testng.annotations.Test; - -import com.google.common.collect.ImmutableMap; -import com.google.common.collect.Maps; - -/** - */ -public class ProjectApiLiveTest extends BaseGoogleComputeEngineApiLiveTest { - - private static final String METADATA_ITEM_KEY = "projectLiveTestTestProp"; - private static final String METADATA_ITEM_VALUE = "projectLiveTestTestValue"; - - private ProjectApi projectApi() { - return api.getProjectApi(); - } - - private Project project; - private int initialMetadataSize; - private String initialFingerprint; - - @Test(groups = "live") - public void testGetProjectWhenExists() { - this.project = projectApi().get(userProject.get()); - assertNotNull(project); - assertNotNull(project.getId()); - assertNotNull(project.getName()); - } - - @Test(groups = "live") - public void testGetProjectWhenNotExists() { - Project project = projectApi().get("momma"); - assertNull(project); - } - - @Test(groups = "live", dependsOnMethods = "testGetProjectWhenExists") - public void addItemToMetadata() { - this.initialMetadataSize = project.getCommonInstanceMetadata().getItems().size(); - this.initialFingerprint = this.project.getCommonInstanceMetadata().getFingerprint(); - 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), - this.project.toString()); - assertEquals(this.project.getCommonInstanceMetadata().getItems().get(METADATA_ITEM_KEY), - METADATA_ITEM_VALUE); - assertNotNull(this.project.getCommonInstanceMetadata().getFingerprint()); - } - - @Test(groups = "live", dependsOnMethods = "addItemToMetadata") - public void testDeleteItemFromMetadata() { - 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); - } - - /** - * Adds an item to the Project's metadata - * <p/> - * Beyond it's use here it is also used as a cheap way of generating Operations to both test the OperationApi and - * the pagination system. - */ - public static Operation addItemToMetadata(ProjectApi projectApi, String projectName, String key, String value) { - Project project = projectApi.get(projectName); - assertNotNull(project); - ImmutableMap.Builder<String, String> metadataBuilder = ImmutableMap.builder(); - metadataBuilder.putAll(project.getCommonInstanceMetadata().getItems()); - metadataBuilder.put(key, value); - return projectApi.setCommonInstanceMetadata(projectName, metadataBuilder.build(), - project.getCommonInstanceMetadata().getFingerprint()); - } - - /** - * Deletes an item from the Project's metadata - * <p/> - * Beyond it's use here it is also used as a cheap way of generating Operation's to both test the OperationApi and - * the pagination system. - */ - public static Operation deleteItemFromMetadata(ProjectApi projectApi, String projectName, String key) { - Project project = projectApi.get(projectName); - assertNotNull(project); - ImmutableMap.Builder<String, String> metadataBuilder = ImmutableMap.builder(); - metadataBuilder.putAll(Maps.filterKeys(project.getCommonInstanceMetadata().getItems(), not(equalTo(key)))); - return projectApi.setCommonInstanceMetadata(projectName, metadataBuilder.build(), - project.getCommonInstanceMetadata().getFingerprint()); - } - - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiExpectTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiExpectTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiExpectTest.java deleted file mode 100644 index f4e32cb..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiExpectTest.java +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.googlecomputeengine.features; - -import static org.jclouds.googlecomputeengine.GoogleComputeEngineConstants.COMPUTE_READONLY_SCOPE; -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNull; -import static org.testng.Assert.assertTrue; - -import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiExpectTest; -import org.jclouds.googlecomputeengine.parse.ParseRegionListTest; -import org.jclouds.googlecomputeengine.parse.ParseRegionTest; -import org.jclouds.http.HttpRequest; -import org.jclouds.http.HttpResponse; -import org.testng.annotations.Test; - -@Test(groups = "unit") -public class RegionApiExpectTest extends BaseGoogleComputeEngineApiExpectTest { - - public static final String REGIONS_URL_PREFIX = "https://www.googleapis.com/compute/v1/projects/myproject/regions"; - - public static final HttpRequest GET_REGION_REQ = HttpRequest - .builder() - .method("GET") - .endpoint(REGIONS_URL_PREFIX + "/us-central1") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - public static final HttpRequest LIST_REGIONS_REQ = HttpRequest - .builder() - .method("GET") - .endpoint(REGIONS_URL_PREFIX) - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - public static final HttpResponse LIST_REGIONS_RESPONSE = HttpResponse.builder().statusCode(200) - .payload(staticPayloadFromResource("/region_list.json")).build(); - - public void testGetRegionResponseIs2xx() throws Exception { - - - HttpResponse operationResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/region_get.json")).build(); - - RegionApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, GET_REGION_REQ, operationResponse).getRegionApiForProject("myproject"); - - assertEquals(api.get("us-central1"), - new ParseRegionTest().expected()); - } - - public void testGetRegionResponseIs4xx() throws Exception { - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - RegionApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, GET_REGION_REQ, operationResponse).getRegionApiForProject("myproject"); - - assertNull(api.get("us-central1")); - } - - public void testListRegionNoOptionsResponseIs2xx() throws Exception { - - RegionApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, LIST_REGIONS_REQ, LIST_REGIONS_RESPONSE).getRegionApiForProject("myproject"); - - assertEquals(api.listFirstPage().toString(), - new ParseRegionListTest().expected().toString()); - } - - public void testListRegionWithPaginationOptionsResponseIs4xx() { - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - RegionApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, LIST_REGIONS_REQ, operationResponse).getRegionApiForProject("myproject"); - - assertTrue(api.list().concat().isEmpty()); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java deleted file mode 100644 index 6558f36..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionApiLiveTest.java +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.googlecomputeengine.features; - -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNotNull; -import static org.testng.Assert.assertSame; -import static org.testng.Assert.assertTrue; - -import java.util.Iterator; -import java.util.List; - -import org.jclouds.collect.IterableWithMarker; -import org.jclouds.collect.PagedIterable; -import org.jclouds.googlecomputeengine.domain.Region; -import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; -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 { - - private Region region; - - private RegionApi api() { - return api.getRegionApiForProject(userProject.get()); - } - - @Test(groups = "live") - public void testListRegion() { - - PagedIterable<Region> regions = api().list(new ListOptions.Builder() - .maxResults(1)); - - Iterator<IterableWithMarker<Region>> pageIterator = regions.iterator(); - assertTrue(pageIterator.hasNext()); - - IterableWithMarker<Region> singlePageIterator = pageIterator.next(); - List<Region> regionAsList = Lists.newArrayList(singlePageIterator); - - assertSame(regionAsList.size(), 1); - - this.region = Iterables.getOnlyElement(regionAsList); - } - - - @Test(groups = "live", dependsOnMethods = "testListRegion") - public void testGetRegion() { - Region region = api().get(this.region.getName()); - assertNotNull(region); - assertRegionEquals(region, this.region); - } - - private void assertRegionEquals(Region result, Region expected) { - assertEquals(result.getName(), expected.getName()); - } - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiExpectTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiExpectTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiExpectTest.java deleted file mode 100644 index 70b9eda..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiExpectTest.java +++ /dev/null @@ -1,195 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.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.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.http.HttpRequest; -import org.jclouds.http.HttpResponse; -import org.testng.annotations.Test; - -@Test(groups = "unit") -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 DELETE_OPERATIONS_URL_PREFIX = "https://www.googleapis" + - ".com/compute/v1/projects/myproject/regions/us-central1/operations"; - - public static final HttpRequest GET_OPERATION_REQUEST = HttpRequest - .builder() - .method("GET") - .endpoint(OPERATIONS_URL_PREFIX + "/operation-1354084865060-4cf88735faeb8-bbbb12cb") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - 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("[email protected]") - .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) - .id("projects/myproject/regions/us-central1/operations") - .selfLink(URI.create("https://www.googleapis.com/compute/v1/projects/myproject/regions/us-central1/operations")) - .addItem(expected()) - .build(); - } - - public void testGetOperationResponseIs2xx() throws Exception { - - RegionOperationApi regionOperationApi = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, GET_OPERATION_REQUEST, GET_OPERATION_RESPONSE).getRegionOperationApiForProject("myproject"); - - assertEquals(regionOperationApi.getInRegion("us-central1", "operation-1354084865060-4cf88735faeb8-bbbb12cb"), - expected()); - } - - public void testGetOperationResponseIs4xx() throws Exception { - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - RegionOperationApi regionOperationApi = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, GET_OPERATION_REQUEST, operationResponse).getRegionOperationApiForProject("myproject"); - - assertNull(regionOperationApi.getInRegion("us-central1", "operation-1354084865060-4cf88735faeb8-bbbb12cb")); - } - - public void testDeleteOperationResponseIs2xx() throws Exception { - HttpRequest delete = HttpRequest - .builder() - .method("DELETE") - .endpoint(DELETE_OPERATIONS_URL_PREFIX + "/operation-1352178598164-4cdcc9d031510-4aa46279") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(204).build(); - - RegionOperationApi regionOperationApi = requestsSendResponses(requestForScopes(COMPUTE_SCOPE), - TOKEN_RESPONSE, delete, operationResponse).getRegionOperationApiForProject("myproject"); - - regionOperationApi.deleteInRegion("us-central1", "operation-1352178598164-4cdcc9d031510-4aa46279"); - } - - public void testDeleteOperationResponseIs4xx() throws Exception { - HttpRequest delete = HttpRequest - .builder() - .method("DELETE") - .endpoint(DELETE_OPERATIONS_URL_PREFIX + "/operation-1352178598164-4cdcc9d031510-4aa46279") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - RegionOperationApi regionOperationApi = requestsSendResponses(requestForScopes(COMPUTE_SCOPE), - TOKEN_RESPONSE, delete, operationResponse).getRegionOperationApiForProject("myproject"); - - regionOperationApi.deleteInRegion("us-central1", "operation-1352178598164-4cdcc9d031510-4aa46279"); - } - - public void testLisOperationWithNoOptionsResponseIs2xx() { - HttpRequest get = HttpRequest - .builder() - .method("GET") - .endpoint(OPERATIONS_URL_PREFIX) - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/region_operation_list.json")).build(); - - RegionOperationApi regionOperationApi = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, get, operationResponse).getRegionOperationApiForProject("myproject"); - - assertEquals(regionOperationApi.listFirstPageInRegion("us-central1").toString(), - expectedList().toString()); - } - - public void testListOperationWithPaginationOptionsResponseIs2xx() { - HttpRequest get = HttpRequest - .builder() - .method("GET") - .endpoint(OPERATIONS_URL_PREFIX + - "?pageToken=CglPUEVSQVRJT04SOzU5MDQyMTQ4Nzg1Mi5vcG" + - "VyYXRpb24tMTM1MjI0NDI1ODAzMC00Y2RkYmU2YTJkNmIwLWVkMzIyMzQz&" + - "filter=" + - "status%20eq%20done&" + - "maxResults=3") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/region_operation_list.json")).build(); - - RegionOperationApi regionOperationApi = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, get, operationResponse).getRegionOperationApiForProject("myproject"); - - assertEquals(regionOperationApi.listAtMarkerInRegion("us-central1", "CglPUEVSQVRJT04SOzU5MDQyMTQ4Nzg1Mi5vcGVyYXRpb24tMTM1Mj" + - "I0NDI1ODAzMC00Y2RkYmU2YTJkNmIwLWVkMzIyMzQz", - new ListOptions.Builder().filter("status eq done").maxResults(3)).toString(), - expectedList().toString()); - } - - public void testListOperationWithPaginationOptionsResponseIs4xx() { - HttpRequest get = HttpRequest - .builder() - .method("GET") - .endpoint(OPERATIONS_URL_PREFIX) - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - RegionOperationApi regionOperationApi = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, get, operationResponse).getRegionOperationApiForProject("myproject"); - - assertTrue(regionOperationApi.listInRegion("us-central1").concat().isEmpty()); - } - - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiLiveTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiLiveTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiLiveTest.java deleted file mode 100644 index 118d879..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RegionOperationApiLiveTest.java +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.googlecomputeengine.features; - -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNotNull; - -import java.util.concurrent.atomic.AtomicInteger; - -import org.jclouds.collect.IterableWithMarker; -import org.jclouds.collect.PagedIterable; -import org.jclouds.googlecomputeengine.domain.Operation; -import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; -import org.jclouds.googlecomputeengine.options.ListOptions; -import org.testng.annotations.Test; - -import com.google.common.base.Predicate; -import com.google.common.collect.Iterables; - -public class RegionOperationApiLiveTest extends BaseGoogleComputeEngineApiLiveTest { - - private static final String ADDRESS_NAME = "region-operations-api-live-test-address"; - private Operation addOperation; - private Operation deleteOperation; - - private RegionOperationApi api() { - return api.getRegionOperationApiForProject(userProject.get()); - } - - private AddressApi addressApi() { - return api.getAddressApiForProject(userProject.get()); - } - - @Test(groups = "live") - public void testCreateOperations() { - //create some operations by adding and deleting metadata items - // this will make sure there is stuff to listFirstPage - addOperation = assertRegionOperationDoneSucessfully(addressApi().createInRegion(DEFAULT_REGION_NAME, - ADDRESS_NAME), 20); - deleteOperation = assertRegionOperationDoneSucessfully(addressApi().deleteInRegion(DEFAULT_REGION_NAME, - ADDRESS_NAME), 20); - - assertNotNull(addOperation); - assertNotNull(deleteOperation); - } - - @Test(groups = "live", dependsOnMethods = "testCreateOperations") - public void testGetOperation() { - Operation operation = api().getInRegion(DEFAULT_REGION_NAME, addOperation.getName()); - assertNotNull(operation); - assertOperationEquals(operation, this.addOperation); - } - - @Test(groups = "live", dependsOnMethods = "testCreateOperations") - public void testListOperationsWithFiltersAndPagination() { - PagedIterable<Operation> operations = api().listInRegion(DEFAULT_REGION_NAME, new ListOptions.Builder() -// .filter("operationType eq insert") - .maxResults(1)); - - // 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) { - counter.addAndGet(Iterables.size(input)); - return counter.get() == 2; - } - }); - } - - private void assertOperationEquals(Operation result, Operation expected) { - assertEquals(result.getName(), expected.getName()); - } - - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiExpectTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiExpectTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiExpectTest.java deleted file mode 100644 index 6e9fa6e..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiExpectTest.java +++ /dev/null @@ -1,175 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.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 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.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") -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") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/route_get.json")).build(); - - RouteApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, get, operationResponse).getRouteApiForProject("myproject"); - - assertEquals(api.get("default-route-c99ebfbed0e1f375"), - new ParseRouteTest().expected()); - } - - public void testGetRouteResponseIs4xx() throws Exception { - HttpRequest get = HttpRequest - .builder() - .method("GET") - .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/global/routes/default-route-c99ebfbed0e1f375") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - RouteApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, get, operationResponse).getRouteApiForProject("myproject"); - - assertNull(api.get("default-route-c99ebfbed0e1f375")); - } - - public void testInsertRouteResponseIs2xx() { - HttpRequest insert = HttpRequest - .builder() - - .method("POST") - .endpoint("https://www.googleapis.com/compute/v1/projects/myproject/global/routes") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN) - .payload(payloadFromResourceWithContentType("/route_insert.json", MediaType.APPLICATION_JSON)) - .build(); - - HttpResponse insertRouteResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/global_operation.json")).build(); - - RouteApi api = requestsSendResponses(requestForScopes(COMPUTE_SCOPE), - TOKEN_RESPONSE, insert, - insertRouteResponse).getRouteApiForProject("myproject"); - - assertEquals(api.createInNetwork("default-route-c99ebfbed0e1f375", - URI.create("https://www.googleapis.com/compute/v1/projects/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()); - } - - public void testDeleteRouteResponseIs2xx() { - HttpRequest delete = HttpRequest - .builder() - .method("DELETE") - .endpoint("https://www.googleapis" + - ".com/compute/v1/projects/myproject/global/routes/default-route-c99ebfbed0e1f375") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse deleteResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/global_operation.json")).build(); - - RouteApi api = requestsSendResponses(requestForScopes(COMPUTE_SCOPE), - TOKEN_RESPONSE, delete, deleteResponse).getRouteApiForProject("myproject"); - - assertEquals(api.delete("default-route-c99ebfbed0e1f375"), - new ParseOperationTest().expected()); - } - - public void testDeleteRouteResponseIs4xx() { - HttpRequest delete = HttpRequest - .builder() - .method("DELETE") - .endpoint("https://www.googleapis" + - ".com/compute/v1/projects/myproject/global/routes/default-route-c99ebfbed0e1f375") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse deleteResponse = HttpResponse.builder().statusCode(404).build(); - - RouteApi api = requestsSendResponses(requestForScopes(COMPUTE_SCOPE), - TOKEN_RESPONSE, delete, deleteResponse).getRouteApiForProject("myproject"); - - assertNull(api.delete("default-route-c99ebfbed0e1f375")); - } - - public void testListRoutesResponseIs2xx() { - HttpRequest list = HttpRequest - .builder() - .method("GET") - .endpoint("https://www.googleapis" + - ".com/compute/v1/projects/myproject/global/routes") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/route_list.json")).build(); - - RouteApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, list, operationResponse).getRouteApiForProject("myproject"); - - assertEquals(api.listFirstPage().toString(), - new ParseRouteListTest().expected().toString()); - } - - public void testListRoutesResponseIs4xx() { - HttpRequest list = HttpRequest - .builder() - .method("GET") - .endpoint("https://www.googleapis" + - ".com/compute/v1/projects/myproject/global/routes") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - RouteApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, list, operationResponse).getRouteApiForProject("myproject"); - - assertTrue(api.list().concat().isEmpty()); - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java deleted file mode 100644 index 8269ec8..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/RouteApiLiveTest.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.googlecomputeengine.features; - -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNotNull; - -import java.util.List; - -import org.jclouds.collect.PagedIterable; -import org.jclouds.googlecomputeengine.domain.Route; -import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiLiveTest; -import org.jclouds.googlecomputeengine.options.ListOptions; -import org.jclouds.googlecomputeengine.options.RouteOptions; -import org.testng.annotations.Test; - -import com.google.common.collect.Iterables; -import com.google.common.collect.Lists; - -@Test(groups = "live", testName = "RouteApiLiveTest") -public class RouteApiLiveTest extends BaseGoogleComputeEngineApiLiveTest { - - private static final String DEST_RANGE = "20.10.0.0/16"; - private static final String IPV4_RANGE = "10.0.0.0/8"; - private static final String ROUTE_NAME = "route-api-live-test-route"; - private static final String ROUTE_NETWORK_NAME = "route-api-live-test-network"; - public static final int TIME_WAIT = 30; - - private RouteApi api() { - return api.getRouteApiForProject(userProject.get()); - } - - @Test(groups = "live") - public void testInsertRoute() { - assertGlobalOperationDoneSucessfully(api.getNetworkApiForProject(userProject.get()).createInIPv4Range - (ROUTE_NETWORK_NAME, IPV4_RANGE), TIME_WAIT); - assertGlobalOperationDoneSucessfully(api().createInNetwork(ROUTE_NAME, - getNetworkUrl(userProject.get(), ROUTE_NETWORK_NAME), - new RouteOptions().addTag("footag") - .addTag("bartag") - .description("RouteApi Live Test") - .destRange(DEST_RANGE) - .priority(1000) - .nextHopGateway(getGatewayUrl(userProject.get(), DEFAULT_GATEWAY_NAME))), - TIME_WAIT); - } - - @Test(groups = "live", dependsOnMethods = "testInsertRoute") - public void testGetRoute() { - Route route = api().get(ROUTE_NAME); - - assertNotNull(route); - assertRouteEquals(route); - } - - @Test(groups = "live", dependsOnMethods = "testGetRoute") - public void testListRoute() { - - PagedIterable<Route> routes = api().list(new ListOptions() - .filter("name eq " + ROUTE_NAME)); - - List<Route> routesAsList = Lists.newArrayList(routes.concat()); - - assertEquals(routesAsList.size(), 1); - - assertRouteEquals(Iterables.getOnlyElement(routesAsList)); - - } - - @Test(groups = "live", dependsOnMethods = "testListRoute") - public void testDeleteRoute() { - assertGlobalOperationDoneSucessfully(api().delete(ROUTE_NAME), TIME_WAIT); - assertGlobalOperationDoneSucessfully(api.getNetworkApiForProject(userProject.get()) - .delete(ROUTE_NETWORK_NAME), TIME_WAIT); - } - - 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)); - } - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/295c545c/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiExpectTest.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiExpectTest.java b/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiExpectTest.java deleted file mode 100644 index 4caedc5..0000000 --- a/dependencies/jclouds/apis/gce/1.8.1-stratos/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiExpectTest.java +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.googlecomputeengine.features; - -import static org.jclouds.googlecomputeengine.GoogleComputeEngineConstants.COMPUTE_READONLY_SCOPE; -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNull; -import static org.testng.Assert.assertTrue; - -import org.jclouds.googlecomputeengine.internal.BaseGoogleComputeEngineApiExpectTest; -import org.jclouds.googlecomputeengine.parse.ParseSnapshotListTest; -import org.jclouds.googlecomputeengine.parse.ParseSnapshotTest; -import org.jclouds.http.HttpRequest; -import org.jclouds.http.HttpResponse; -import org.testng.annotations.Test; - -@Test(groups = "unit") -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 HttpRequest GET_SNAPSHOT_REQ = HttpRequest - .builder() - .method("GET") - .endpoint(SNAPSHOT_URL_PREFIX + "/test-snap") - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - public static final HttpRequest LIST_SNAPSHOTS_REQ = HttpRequest - .builder() - .method("GET") - .endpoint(SNAPSHOT_URL_PREFIX) - .addHeader("Accept", "application/json") - .addHeader("Authorization", "Bearer " + TOKEN).build(); - - public static final HttpResponse LIST_SNAPSHOTS_RESPONSE = HttpResponse.builder().statusCode(200) - .payload(staticPayloadFromResource("/snapshot_list.json")).build(); - - public void testGetSnapshotResponseIs2xx() throws Exception { - - - HttpResponse operationResponse = HttpResponse.builder().statusCode(200) - .payload(payloadFromResource("/snapshot_get.json")).build(); - - SnapshotApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, GET_SNAPSHOT_REQ, operationResponse).getSnapshotApiForProject("myproject"); - - assertEquals(api.get("test-snap"), - new ParseSnapshotTest().expected()); - } - - public void testGetSnapshotResponseIs4xx() throws Exception { - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - SnapshotApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, GET_SNAPSHOT_REQ, operationResponse).getSnapshotApiForProject("myproject"); - - assertNull(api.get("test-snap")); - } - - public void testListSnapshotNoOptionsResponseIs2xx() throws Exception { - - SnapshotApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, LIST_SNAPSHOTS_REQ, LIST_SNAPSHOTS_RESPONSE).getSnapshotApiForProject("myproject"); - - assertEquals(api.listFirstPage().toString(), - new ParseSnapshotListTest().expected().toString()); - } - - public void testListSnapshotWithPaginationOptionsResponseIs4xx() { - - HttpResponse operationResponse = HttpResponse.builder().statusCode(404).build(); - - SnapshotApi api = requestsSendResponses(requestForScopes(COMPUTE_READONLY_SCOPE), - TOKEN_RESPONSE, LIST_SNAPSHOTS_REQ, operationResponse).getSnapshotApiForProject("myproject"); - - assertTrue(api.list().concat().isEmpty()); - } -}
