You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ra...@apache.org on 2015/08/21 09:09:38 UTC

[25/52] [abbrv] [partial] stratos git commit: Merging jclouds GCE fix with upstream - resolving conflicts

http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/SecurityGroupApiLiveTest.java
----------------------------------------------------------------------
diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/SecurityGroupApiLiveTest.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/SecurityGroupApiLiveTest.java
deleted file mode 100644
index a7ef1a6..0000000
--- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/SecurityGroupApiLiveTest.java
+++ /dev/null
@@ -1,99 +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.openstack.neutron.v2.extensions;
-
-import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertTrue;
-
-import org.jclouds.openstack.neutron.v2.domain.Rule;
-import org.jclouds.openstack.neutron.v2.domain.RuleDirection;
-import org.jclouds.openstack.neutron.v2.domain.RuleEthertype;
-import org.jclouds.openstack.neutron.v2.domain.RuleProtocol;
-import org.jclouds.openstack.neutron.v2.domain.SecurityGroup;
-import org.jclouds.openstack.neutron.v2.internal.BaseNeutronApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * Tests parsing and Guice wiring of RouterApi
- */
-@Test(groups = "live", testName = "SecurityGroupApiLiveTest")
-public class SecurityGroupApiLiveTest extends BaseNeutronApiLiveTest {
-
-   /**
-    * Smoke test for the Security Group extension for Neutron
-    */
-   public void testCreateUpdateAndDeleteSecurityGroup() {
-      for (String region : api.getConfiguredRegions()) {
-         SecurityGroupApi sgApi = null;
-         Rule rule = null;
-         SecurityGroup securityGroup = null;
-
-         try {
-            sgApi = api.getSecurityGroupApi(region).get();
-
-            securityGroup = sgApi.create(
-                  SecurityGroup.createBuilder().name("jclouds-test").description("jclouds test security group")
-                        .build());
-            assertNotNull(securityGroup);
-
-            rule = sgApi.create(
-                  Rule.createBuilder(RuleDirection.EGRESS, securityGroup.getId())
-                        .ethertype(RuleEthertype.IPV6)
-                        .portRangeMax(90)
-                        .portRangeMin(80)
-                        .protocol(RuleProtocol.TCP)
-                        .build());
-
-            assertNotNull(rule);
-
-            // Refresh
-            securityGroup = sgApi.getSecurityGroup(securityGroup.getId());
-
-            assertEquals(securityGroup.getName(), "jclouds-test");
-            assertEquals(securityGroup.getDescription(), "jclouds test security group");
-
-            assertEquals(securityGroup.getRules().size(), 3);
-
-            Rule newSecGroupRule = null;
-
-            for (Rule sgr : securityGroup.getRules()) {
-               if (sgr.getId().equals(rule.getId())) {
-                  newSecGroupRule = sgr;
-                  break;
-               }
-            }
-            assertNotNull(newSecGroupRule, "Did not find the new rule in the group.");
-
-            assertEquals(rule, newSecGroupRule);
-
-            assertEquals(rule.getEthertype(), RuleEthertype.IPV6);
-            assertEquals(rule.getProtocol(), RuleProtocol.TCP);
-            assertEquals(rule.getPortRangeMax().intValue(), 90);
-            assertEquals(rule.getPortRangeMin().intValue(), 80);
-            assertEquals(rule.getDirection(), RuleDirection.EGRESS);
-         } finally {
-            try {
-               assertTrue(sgApi.deleteRule(rule.getId()));
-            } finally {
-               assertTrue(sgApi.deleteSecurityGroup(securityGroup.getId()));
-            }
-         }
-      }
-   }
-}

http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/SecurityGroupApiMockTest.java
----------------------------------------------------------------------
diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/SecurityGroupApiMockTest.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/SecurityGroupApiMockTest.java
deleted file mode 100644
index dfe6a80..0000000
--- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/SecurityGroupApiMockTest.java
+++ /dev/null
@@ -1,659 +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.openstack.neutron.v2.extensions;
-
-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.assertTrue;
-
-import java.io.IOException;
-import java.net.URISyntaxException;
-import java.util.List;
-
-import org.jclouds.openstack.neutron.v2.NeutronApi;
-import org.jclouds.openstack.neutron.v2.domain.Rule;
-import org.jclouds.openstack.neutron.v2.domain.RuleDirection;
-import org.jclouds.openstack.neutron.v2.domain.RuleEthertype;
-import org.jclouds.openstack.neutron.v2.domain.RuleProtocol;
-import org.jclouds.openstack.neutron.v2.domain.Rules;
-import org.jclouds.openstack.neutron.v2.domain.SecurityGroup;
-import org.jclouds.openstack.neutron.v2.domain.SecurityGroups;
-import org.jclouds.openstack.neutron.v2.internal.BaseNeutronApiMockTest;
-import org.jclouds.openstack.v2_0.options.PaginationOptions;
-import org.jclouds.rest.ResourceNotFoundException;
-import org.testng.annotations.Test;
-
-import com.squareup.okhttp.mockwebserver.MockResponse;
-import com.squareup.okhttp.mockwebserver.MockWebServer;
-
-/**
- * Tests NetworkApi Guice wiring and parsing
- *
- */
-@Test
-public class SecurityGroupApiMockTest extends BaseNeutronApiMockTest {
-
-   public void testCreateSecurityGroup() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(201).setBody(stringFromResource("/security_group_create_response.json"))));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         SecurityGroup.CreateSecurityGroup createSecurityGroup = SecurityGroup.createBuilder().name("new-webservers")
-               .description("security group for webservers")
-               .build();
-
-         SecurityGroup securityGroup = api.create(createSecurityGroup);
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "POST", "/v2.0/security-groups", "/security_group_create_request.json");
-
-         /*
-          * Check response
-          */
-         assertNotNull(securityGroup);
-         assertEquals(securityGroup.getId(), "2076db17-a522-4506-91de-c6dd8e837028");
-         assertEquals(securityGroup.getTenantId(), "e4f50856753b4dc6afee5fa6b9b6c550");
-         assertEquals(securityGroup.getName(), "new-webservers");
-         assertEquals(securityGroup.getDescription(), "security group for webservers");
-
-         Rule sgr0 = securityGroup.getRules().get(0);
-         Rule sgr1 = securityGroup.getRules().get(1);
-
-         assertEquals(sgr0.getId(), "38ce2d8e-e8f1-48bd-83c2-d33cb9f50c3d");
-         assertEquals(sgr1.getId(), "565b9502-12de-4ffd-91e9-68885cff6ae1");
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   @Test(expectedExceptions = ResourceNotFoundException.class)
-   public void testCreateSecurityGroupFail() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(404)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         SecurityGroup.CreateSecurityGroup createSecurityGroup = SecurityGroup.createBuilder().name("new-webservers")
-               .description("security group for webservers")
-               .build();
-
-         SecurityGroup securityGroup = api.create(createSecurityGroup);
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testCreateSecurityGroupRule() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(201).setBody(stringFromResource("/security_group_rule_create_response.json"))));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         Rule.CreateRule createSecurityGroupRule = Rule.createBuilder(
-               RuleDirection.INGRESS, "a7734e61-b545-452d-a3cd-0189cbd9747a")
-               .portRangeMin(80)
-               .portRangeMax(80)
-               .ethertype(RuleEthertype.IPV4)
-               .protocol(RuleProtocol.TCP)
-               .remoteGroupId("85cc3048-abc3-43cc-89b3-377341426ac5")
-               .build();
-
-         Rule rule = api.create(createSecurityGroupRule);
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "POST", "/v2.0/security-group-rules", "/security_group_rule_create_request.json");
-
-         /*
-          * Check response
-          */
-         assertNotNull(rule);
-         assertEquals(rule.getId(), "2bc0accf-312e-429a-956e-e4407625eb62");
-         assertEquals(rule.getTenantId(), "e4f50856753b4dc6afee5fa6b9b6c550");
-         assertEquals(rule.getDirection(), RuleDirection.INGRESS);
-         assertEquals(rule.getPortRangeMax().intValue(), 80);
-         assertEquals(rule.getPortRangeMin().intValue(), 80);
-         assertEquals(rule.getEthertype(), RuleEthertype.IPV4);
-         assertEquals(rule.getProtocol(), RuleProtocol.TCP);
-         assertEquals(rule.getRemoteGroupId(), "85cc3048-abc3-43cc-89b3-377341426ac5");
-         assertEquals(rule.getSecurityGroupId(), "a7734e61-b545-452d-a3cd-0189cbd9747a");
-
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   @Test(expectedExceptions = ResourceNotFoundException.class)
-   public void testCreateSecurityGroupRuleFail() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(404)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         Rule.CreateRule createSecurityGroupRule = Rule.createBuilder(
-               RuleDirection.INGRESS, "a7734e61-b545-452d-a3cd-0189cbd9747a")
-               .portRangeMin(80)
-               .portRangeMax(80)
-               .ethertype(RuleEthertype.IPV4)
-               .protocol(RuleProtocol.TCP)
-               .remoteGroupId("85cc3048-abc3-43cc-89b3-377341426ac5")
-               .build();
-
-         Rule rule = api.create(createSecurityGroupRule);
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testListSpecificPageSecurityGroup() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(new MockResponse().setResponseCode(200).setBody(stringFromResource("/security_group_list_response_paged1.json"))));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         SecurityGroups securityGroups = api.listSecurityGroups(PaginationOptions.Builder.limit(2).marker("abcdefg"));
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-groups?limit=2&marker=abcdefg");
-
-         /*
-          * Check response
-          */
-         assertNotNull(securityGroups);
-         assertEquals(securityGroups.size(), 2);
-         // Ensures the full collection is parsed and ordering is preserved.
-         assertEquals(securityGroups.first().get().getId(), "85cc3048-abc3-43cc-89b3-377341426ac5");
-         assertEquals(securityGroups.get(1).getId(), "85cc3048-abc3-43cc-89b3-377341426ac52");
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testListSpecificPageSecurityGroupFail() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(new MockResponse().setResponseCode(404)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         SecurityGroups securityGroups = api.listSecurityGroups(PaginationOptions.Builder.limit(2).marker("abcdefg"));
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-groups?limit=2&marker=abcdefg");
-
-         /*
-          * Check response
-          */
-         assertNotNull(securityGroups);
-         assertTrue(securityGroups.isEmpty());
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testListSpecificPageSecurityGroupRule() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(new MockResponse().setResponseCode(200).setBody(stringFromResource("/security_group_rule_list_response_paged1.json"))));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         Rules rules = api.listRules(PaginationOptions.Builder.limit(2).marker("abcdefg"));
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-group-rules?limit=2&marker=abcdefg");
-
-         /*
-          * Check response
-          */
-         assertNotNull(rules);
-         assertEquals(rules.size(), 4);
-         // Ensures the full collection is parsed and ordering is preserved.
-         assertEquals(rules.first().get().getId(), "3c0e45ff-adaf-4124-b083-bf390e5482ff");
-         assertEquals(rules.get(3).getId(), "f7d45c89-008e-4bab-88ad-d6811724c51c");
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testListSpecificPageSecurityGroupRuleFail() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(new MockResponse().setResponseCode(404)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         Rules rules = api.listRules(PaginationOptions.Builder.limit(2).marker("abcdefg"));
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-group-rules?limit=2&marker=abcdefg");
-
-         /*
-          * Check response
-          */
-         assertNotNull(rules);
-         assertTrue(rules.isEmpty());
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testListPagedSecurityGroups() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(new MockResponse().setResponseCode(200).setBody(stringFromResource("/security_group_list_response_paged1.json"))));
-      server.enqueue(addCommonHeaders(new MockResponse().setResponseCode(200).setBody(stringFromResource("/security_group_list_response_paged2.json"))));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         // Note: Lazy! Have to actually look at the collection.
-         List<SecurityGroup> securityGroups = api.listSecurityGroups().concat().toList();
-
-         /*
-          * Check request
-          */
-         assertEquals(server.getRequestCount(), 3);
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-groups");
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-groups?marker=71c1e68c-171a-4aa2-aca5-50ea153a3718");
-
-         /*
-          * Check response
-          */
-         assertNotNull(securityGroups);
-         assertEquals(securityGroups.size(), 4);
-         // Ensures ordering is preserved and both pages are parsed.
-         assertEquals(securityGroups.get(0).getId(), "85cc3048-abc3-43cc-89b3-377341426ac5");
-         assertEquals(securityGroups.get(3).getId(), "85cc3048-abc3-43cc-89b3-377341426ac524");
-
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testListPagedSecurityGroupsFail() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(new MockResponse().setResponseCode(404)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         // Note: Lazy! Have to actually look at the collection.
-         List<SecurityGroup> securityGroups = api.listSecurityGroups().concat().toList();
-
-         /*
-          * Check request
-          */
-         assertEquals(server.getRequestCount(), 2);
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-groups");
-
-         /*
-          * Check response
-          */
-         assertNotNull(securityGroups);
-         assertTrue(securityGroups.isEmpty());
-
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testListPagedSecurityGroupRules() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(new MockResponse().setResponseCode(200).setBody(stringFromResource("/security_group_rule_list_response_paged1.json"))));
-      server.enqueue(addCommonHeaders(new MockResponse().setResponseCode(200).setBody(stringFromResource("/security_group_rule_list_response_paged2.json"))));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         // Note: Lazy! Have to actually look at the collection.
-         List<Rule> rules = api.listRules().concat().toList();
-
-         /*
-          * Check request
-          */
-         assertEquals(server.getRequestCount(), 3);
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-group-rules");
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-group-rules?marker=71c1e68c-171a-4aa2-aca5-50ea153a3718");
-
-         /*
-          * Check response
-          */
-         assertNotNull(rules);
-         assertEquals(rules.size(), 8);
-         // Ensures both pages are tested and ordering is preserved.
-         assertEquals(rules.get(0).getId(), "3c0e45ff-adaf-4124-b083-bf390e5482ff");
-         assertEquals(rules.get(7).getId(), "f7d45c89-008e-4bab-88ad-d6811724c51c2");
-
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testListPagedSecurityGroupRulesFail() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(new MockResponse().setResponseCode(404)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         // Note: Lazy! Have to actually look at the collection.
-         List<Rule> rules = api.listRules().concat().toList();
-
-         /*
-          * Check request
-          */
-         assertEquals(server.getRequestCount(), 2);
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-group-rules");
-
-         /*
-          * Check response
-          */
-         assertNotNull(rules);
-         assertTrue(rules.isEmpty());
-
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testGetSecurityGroup() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(201).setBody(stringFromResource("/security_group_get_response.json"))));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         SecurityGroup securityGroup = api.getSecurityGroup("12345");
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-groups/12345");
-
-         /*
-          * Check response
-          */
-         assertNotNull(securityGroup);
-         assertEquals(securityGroup.getName(), "default");
-         assertEquals(securityGroup.getDescription(), "default");
-         assertEquals(securityGroup.getId(), "85cc3048-abc3-43cc-89b3-377341426ac5");
-         assertEquals(securityGroup.getTenantId(), "e4f50856753b4dc6afee5fa6b9b6c550");
-         Rule sgr = securityGroup.getRules().get(0);
-         assertEquals(sgr.getId(), "3c0e45ff-adaf-4124-b083-bf390e5482ff");
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testGetSecurityGroupFail() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(404)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         SecurityGroup securityGroup = api.getSecurityGroup("12345");
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-groups/12345");
-
-         /*
-          * Check response
-          */
-         assertNull(securityGroup);
-
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testGetSecurityGroupRule() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(201).setBody(stringFromResource("/security_group_rule_get_response.json"))));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         Rule rule = api.get("12345");
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-group-rules/12345");
-
-         /*
-          * Check response
-          */
-         assertNotNull(rule);
-         assertEquals(rule.getDirection(), RuleDirection.EGRESS);
-         assertEquals(rule.getEthertype(), RuleEthertype.IPV6);
-         assertEquals(rule.getId(), "3c0e45ff-adaf-4124-b083-bf390e5482ff");
-         assertEquals(rule.getTenantId(), "e4f50856753b4dc6afee5fa6b9b6c550");
-         assertEquals(rule.getSecurityGroupId(), "85cc3048-abc3-43cc-89b3-377341426ac5");
-
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testGetSecurityGroupRuleFail() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(404)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         Rule rule = api.get("12345");
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "GET", "/v2.0/security-group-rules/12345");
-
-         /*
-          * Check response
-          */
-         assertNull(rule);
-
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testDeleteSecurityGroup() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(201)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         boolean result = api.deleteSecurityGroup("12345");
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "DELETE", "/v2.0/security-groups/12345");
-
-         /*
-          * Check response
-          */
-         assertTrue(result);
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testDeleteSecurityGroupFail() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(404)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         boolean result = api.deleteSecurityGroup("12345");
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "DELETE", "/v2.0/security-groups/12345");
-
-         /*
-          * Check response
-          */
-         assertFalse(result);
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testDeleteSecurityGroupRule() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(201)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         boolean result = api.deleteRule("12345");
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "DELETE", "/v2.0/security-group-rules/12345");
-
-         /*
-          * Check response
-          */
-         assertTrue(result);
-      } finally {
-         server.shutdown();
-      }
-   }
-
-   public void testDeleteSecurityGroupRuleFail() throws IOException, InterruptedException, URISyntaxException {
-      MockWebServer server = mockOpenStackServer();
-      server.enqueue(addCommonHeaders(new MockResponse().setBody(stringFromResource("/access.json"))));
-      server.enqueue(addCommonHeaders(
-            new MockResponse().setResponseCode(404)));
-
-      try {
-         NeutronApi neutronApi = api(server.getUrl("/").toString(), "openstack-neutron", overrides);
-         SecurityGroupApi api = neutronApi.getSecurityGroupApi("RegionOne").get();
-
-         boolean result = api.deleteRule("12345");
-
-         /*
-          * Check request
-          */
-         assertAuthentication(server);
-         assertRequest(server.takeRequest(), "DELETE", "/v2.0/security-group-rules/12345");
-
-         /*
-          * Check response
-          */
-         assertFalse(result);
-      } finally {
-         server.shutdown();
-      }
-   }
-}

http://git-wip-us.apache.org/repos/asf/stratos/blob/897edde8/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/lbaas/v1/LBaaSApiLiveTest.java
----------------------------------------------------------------------
diff --git a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/lbaas/v1/LBaaSApiLiveTest.java b/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/lbaas/v1/LBaaSApiLiveTest.java
deleted file mode 100644
index 0665906..0000000
--- a/dependencies/jclouds/apis/openstack-neutron/1.8.1-stratos/src/test/java/org/jclouds/openstack/neutron/v2/extensions/lbaas/v1/LBaaSApiLiveTest.java
+++ /dev/null
@@ -1,637 +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.openstack.neutron.v2.extensions.lbaas.v1;
-
-import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertFalse;
-import static org.testng.Assert.assertNotEquals;
-import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertNull;
-import static org.testng.Assert.assertTrue;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.jclouds.logging.Logger;
-import org.jclouds.openstack.neutron.v2.domain.Network;
-import org.jclouds.openstack.neutron.v2.domain.NetworkType;
-import org.jclouds.openstack.neutron.v2.domain.Subnet;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.HealthMonitor;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.HealthMonitors;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.HttpMethod;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.LBaaSStatus;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.Member;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.Members;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.Pool;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.Pools;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.ProbeType;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.Protocol;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.SessionPersistence;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.VIP;
-import org.jclouds.openstack.neutron.v2.domain.lbaas.v1.VIPs;
-import org.jclouds.openstack.neutron.v2.features.NetworkApi;
-import org.jclouds.openstack.neutron.v2.features.SubnetApi;
-import org.jclouds.openstack.neutron.v2.internal.BaseNeutronApiLiveTest;
-import org.jclouds.openstack.v2_0.options.PaginationOptions;
-import org.testng.annotations.AfterClass;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-import com.google.common.base.Optional;
-import com.google.common.collect.ImmutableMap;
-
-/**
- * Tests parsing and Guice wiring of RouterApi
- */
-@Test(groups = "live", testName = "LBaaSApiLiveTest")
-public class LBaaSApiLiveTest extends BaseNeutronApiLiveTest {
-
-   private Logger logger = getLoggingModule().createLoggerFactory().getLogger(LBaaSApiLiveTest.class.getName());
-
-   private Map<String, Network> networks;
-   private Map<String, Subnet> subnets;
-
-   public void testLBaaSPresence() throws Exception {
-      for (String region : api.getConfiguredRegions()) {
-         Optional<LBaaSApi> lBaaSv1Api = api.getLBaaSApi(region);
-
-         /*
-          * Check response
-          */
-         assertNotNull(lBaaSv1Api);
-         if (lBaaSv1Api.isPresent()) {
-            logger.info("LBaaS API Version 1 is available");
-         } else {
-            logger.info("LBaaS API Version 1 is unavailable");
-         }
-      }
-   }
-
-   @BeforeClass
-   public void createSubnets() {
-      networks = new HashMap<String, Network>();
-      subnets = new HashMap<String, Subnet>();
-      for (String region : api.getConfiguredRegions()) {
-         Optional<LBaaSApi> lbaasApiExtension = api.getLBaaSApi(region);
-         if (!lbaasApiExtension.isPresent()) {
-            continue;
-         }
-         NetworkApi networkApi = api.getNetworkApi(region);
-         SubnetApi subnetApi = api.getSubnetApi(region);
-
-         Network network = networkApi.create(Network.createBuilder("jclouds-lbaas-test-network").networkType(NetworkType.LOCAL).build());
-         assertNotNull(network);
-         networks.put(region, network);
-
-         Subnet subnet = subnetApi.create(Subnet.createBuilder(network.getId(), "10.0.0.0/24").ipVersion(4).name("jclouds-lbaas-test-subnet").build());
-         assertNotNull(subnet);
-         subnets.put(region, subnet);
-      }
-   }
-
-   @AfterClass
-   public void deleteSubnets() {
-      for (String region : api.getConfiguredRegions()) {
-         NetworkApi networkApi = api.getNetworkApi(region);
-         SubnetApi subnetApi = api.getSubnetApi(region);
-
-         try {
-            Subnet subnet = subnets.get(region);
-            if (subnet != null) {
-               assertTrue(subnetApi.delete(subnet.getId()));
-            }
-         } finally {
-            Network network = networks.get(region);
-            if (network != null) {
-               assertTrue(networkApi.delete(network.getId()));
-            }
-         }
-      }
-      networks = null;
-      subnets = null;
-   }
-
-   public void testCreateUpdateAndDeletePool() {
-      for (String region : api.getConfiguredRegions()) {
-         Optional<LBaaSApi> lbaasApiExtension = api.getLBaaSApi(region);
-         if (!lbaasApiExtension.isPresent()) {
-            continue;
-         }
-         LBaaSApi lbaasApi = lbaasApiExtension.get();
-
-         Subnet subnet = subnets.get(region);
-         Pool pool = null;
-
-         try {
-            // Create
-            Pool.CreatePool createPool = Pool.createBuilder(subnet.getId(), Protocol.HTTP, Pool.ROUND_ROBIN)
-                  .name("jclouds-lbaas-test-pool").description(null).healthMonitors(null).provider(null).adminStateUp(null).build();
-            pool = lbaasApi.createPool(createPool);
-            assertNotNull(pool);
-            assertNotNull(pool.getId());
-            assertEquals(pool.getTenantId(), subnet.getTenantId());
-            assertNull(pool.getVIPId());
-            assertEquals(pool.getName(), "jclouds-lbaas-test-pool");
-            assertEquals(pool.getDescription(), "");
-            assertEquals(pool.getSubnetId(), subnet.getId());
-            assertEquals(pool.getProtocol(), Protocol.HTTP);
-            assertNotNull(pool.getProvider());
-            assertEquals(pool.getLBMethod(), Pool.ROUND_ROBIN);
-            assertNotNull(pool.getHealthMonitors());
-            assertTrue(pool.getHealthMonitors().isEmpty());
-            assertNotNull(pool.getHealthMonitorsStatus());
-            assertTrue(pool.getHealthMonitorsStatus().isEmpty());
-            assertNotNull(pool.getMembers());
-            assertTrue(pool.getMembers().isEmpty());
-            assertEquals(pool.getAdminStateUp(), Boolean.TRUE);
-            assertTrue(pool.getStatus() == LBaaSStatus.PENDING_CREATE || pool.getStatus() == LBaaSStatus.ACTIVE);
-            assertNull(pool.getStatusDescription());
-
-            // List and Get
-            Pools pools = lbaasApi.listPools(PaginationOptions.Builder.queryParameters(ImmutableMap.of("name", "jclouds-lbaas-test-pool").asMultimap()));
-            assertNotNull(pools);
-            assertFalse(pools.isEmpty());
-            Pool poolList = pools.first().get();
-            Pool poolGet = lbaasApi.getPool(poolList.getId());
-            assertNotNull(poolGet);
-            assertEquals(poolGet, poolList);
-
-            poolGet = lbaasApi.getPool(pool.getId());
-            assertNotNull(poolGet);
-            assertEquals(poolGet.getName(), pool.getName());
-            assertEquals(poolGet.getId(), pool.getId());
-
-            // Update
-            Pool.UpdatePool updatePool = Pool.updateBuilder().name("jclouds-lbaas-test-pool-renamed").description("new description").lbMethod(Pool.ROUND_ROBIN)
-                  .healthMonitors(null).adminStateUp(Boolean.FALSE).build();
-            Pool poolUpdate = lbaasApi.updatePool(pool.getId(), updatePool);
-            assertNotNull(poolUpdate);
-            assertEquals(poolUpdate.getName(), "jclouds-lbaas-test-pool-renamed");
-            assertEquals(poolUpdate.getLBMethod(), Pool.ROUND_ROBIN);
-            assertNotNull(poolUpdate.getHealthMonitors());
-            assertTrue(poolUpdate.getHealthMonitors().isEmpty());
-            assertNotNull(poolUpdate.getHealthMonitorsStatus());
-            assertTrue(poolUpdate.getHealthMonitorsStatus().isEmpty());
-            assertEquals(poolUpdate.getAdminStateUp(), Boolean.FALSE);
-
-            poolGet = lbaasApi.getPool(pool.getId());
-            assertNotNull(poolGet);
-            assertEquals(poolGet.getId(), pool.getId());
-            assertEquals(poolGet.getTenantId(), subnet.getTenantId());
-            assertNull(poolGet.getVIPId());
-            assertEquals(poolGet.getName(), "jclouds-lbaas-test-pool-renamed");
-            assertEquals(poolGet.getDescription(), "new description");
-            assertEquals(poolGet.getSubnetId(), subnet.getId());
-            assertEquals(poolGet.getProtocol(), Protocol.HTTP);
-            assertNotNull(poolGet.getProvider());
-            assertEquals(poolGet.getLBMethod(), Pool.ROUND_ROBIN);
-            assertNotNull(poolGet.getHealthMonitors());
-            assertTrue(poolGet.getHealthMonitors().isEmpty());
-            assertNotNull(poolGet.getHealthMonitorsStatus());
-            assertTrue(poolGet.getHealthMonitorsStatus().isEmpty());
-            assertNotNull(poolGet.getMembers());
-            assertTrue(poolGet.getMembers().isEmpty());
-            assertEquals(poolGet.getAdminStateUp(), Boolean.FALSE);
-            assertTrue(poolGet.getStatus() == LBaaSStatus.PENDING_UPDATE || poolGet.getStatus() == LBaaSStatus.ACTIVE);
-            assertNull(poolGet.getStatusDescription());
-         } finally {
-            if (pool != null) {
-               // Delete
-               assertTrue(lbaasApi.deletePool(pool.getId()));
-               Pool poolGet = lbaasApi.getPool(pool.getId());
-               assertNull(poolGet);
-            }
-         }
-      }
-   }
-
-   public void testCreateUpdateAndDeleteMember() {
-      for (String region : api.getConfiguredRegions()) {
-         Optional<LBaaSApi> lbaasApiExtension = api.getLBaaSApi(region);
-         if (!lbaasApiExtension.isPresent()) {
-            continue;
-         }
-         LBaaSApi lbaasApi = lbaasApiExtension.get();
-
-         Subnet subnet = subnets.get(region);
-         Pool pool1 = null;
-         Pool pool2 = null;
-         Member member = null;
-
-         try {
-            // Create pools
-            Pool.CreateBuilder createBuilder = Pool.createBuilder(subnet.getId(), Protocol.HTTP, Pool.ROUND_ROBIN)
-                  .name("jclouds-lbaas-test-member-pool-1").description(null).healthMonitors(null).provider(null).adminStateUp(null);
-            pool1 = lbaasApi.createPool(createBuilder.build());
-            assertNotNull(pool1);
-            createBuilder.name("jclouds-lbaas-test-member-pool-2");
-            pool2 = lbaasApi.createPool(createBuilder.build());
-            assertNotNull(pool2);
-
-            // Create
-            Member.CreateMember createMember = Member.createBuilder(pool1.getId(), "10.0.0.100", 80)
-                  .weight(null).adminStateUp(null).build();
-            member = lbaasApi.createMember(createMember);
-            assertNotNull(member);
-            assertNotNull(member.getId());
-            assertEquals(member.getTenantId(), subnet.getTenantId());
-            assertEquals(member.getPoolId(), pool1.getId());
-            assertEquals(member.getAddress(), "10.0.0.100");
-            assertEquals(member.getProtocolPort(), Integer.valueOf(80));
-            assertEquals(member.getWeight(), Integer.valueOf(1));
-            assertEquals(member.getAdminStateUp(), Boolean.TRUE);
-            assertTrue(member.getStatus() == LBaaSStatus.PENDING_CREATE || member.getStatus() == LBaaSStatus.ACTIVE);
-            assertNull(member.getStatusDescription());
-
-            // List and Get
-            Members members = lbaasApi.listMembers(PaginationOptions.Builder.queryParameters(ImmutableMap.of("tenant_id", subnet.getTenantId()).asMultimap()));
-            assertNotNull(members);
-            assertFalse(members.isEmpty());
-            Member memberList = members.first().get();
-            Member memberGet = lbaasApi.getMember(memberList.getId());
-            assertNotNull(memberGet);
-            assertEquals(memberGet, memberList);
-
-            memberGet = lbaasApi.getMember(member.getId());
-            assertNotNull(memberGet);
-            assertEquals(memberGet.getId(), member.getId());
-
-            // Verify member appears in pool1 and not in pool2
-            Pool pool1Get = lbaasApi.getPool(pool1.getId());
-            assertNotNull(pool1Get);
-            assertNotNull(pool1Get.getMembers());
-            assertFalse(pool1Get.getMembers().isEmpty());
-            assertEquals(pool1Get.getMembers().iterator().next(), member.getId());
-            Pool pool2Get = lbaasApi.getPool(pool2.getId());
-            assertNotNull(pool2Get);
-            assertNotNull(pool2Get.getMembers());
-            assertTrue(pool2Get.getMembers().isEmpty());
-
-            // Update
-            Member.UpdateMember updateMember = Member.updateBuilder()
-                  .poolId(pool2.getId()).weight(2).adminStateUp(Boolean.FALSE).build();
-            Member memberUpdate = lbaasApi.updateMember(member.getId(), updateMember);
-            assertNotNull(memberUpdate);
-            assertEquals(memberUpdate.getPoolId(), pool2.getId());
-            assertEquals(memberUpdate.getWeight(), Integer.valueOf(2));
-            assertEquals(memberUpdate.getAdminStateUp(), Boolean.FALSE);
-
-            memberGet = lbaasApi.getMember(member.getId());
-            assertNotNull(memberGet);
-            assertNotNull(memberGet.getId());
-            assertEquals(memberGet.getTenantId(), subnet.getTenantId());
-            assertEquals(memberGet.getPoolId(), pool2.getId());
-            assertEquals(member.getAddress(), "10.0.0.100");
-            assertEquals(memberGet.getProtocolPort(), Integer.valueOf(80));
-            assertEquals(memberGet.getWeight(), Integer.valueOf(2));
-            assertEquals(memberGet.getAdminStateUp(), Boolean.FALSE);
-            assertTrue(memberGet.getStatus() == LBaaSStatus.PENDING_UPDATE || memberGet.getStatus() == LBaaSStatus.ACTIVE);
-            assertNull(memberGet.getStatusDescription());
-
-            // Verify member appears in pool2 and not in pool1
-            pool1Get = lbaasApi.getPool(pool1.getId());
-            assertNotNull(pool1Get);
-            assertNotNull(pool1Get.getMembers());
-            assertTrue(pool1Get.getMembers().isEmpty());
-            pool2Get = lbaasApi.getPool(pool2.getId());
-            assertNotNull(pool2Get);
-            assertNotNull(pool2Get.getMembers());
-            assertFalse(pool2Get.getMembers().isEmpty());
-            assertEquals(pool2Get.getMembers().iterator().next(), member.getId());
-         } finally {
-            if (member != null) {
-               // Delete
-               assertTrue(lbaasApi.deleteMember(member.getId()));
-               Member memberGet = lbaasApi.getMember(member.getId());
-               assertNull(memberGet);
-
-               // Verify member does not appear in pool1 and in pool2
-               Pool pool1Get = lbaasApi.getPool(pool1.getId());
-               assertNotNull(pool1Get);
-               assertNotNull(pool1Get.getMembers());
-               assertTrue(pool1Get.getMembers().isEmpty());
-               Pool pool2Get = lbaasApi.getPool(pool2.getId());
-               assertNotNull(pool2Get);
-               assertNotNull(pool2Get.getMembers());
-               assertTrue(pool2Get.getMembers().isEmpty());
-            }
-            if (pool2 != null) {
-               assertTrue(lbaasApi.deletePool(pool2.getId()));
-            }
-            if (pool1 != null) {
-               assertTrue(lbaasApi.deletePool(pool1.getId()));
-            }
-         }
-      }
-   }
-
-   public void testCreateUpdateAndDeleteVIP() {
-      for (String region : api.getConfiguredRegions()) {
-         Optional<LBaaSApi> lbaasApiExtension = api.getLBaaSApi(region);
-         if (!lbaasApiExtension.isPresent()) {
-            continue;
-         }
-         LBaaSApi lbaasApi = lbaasApiExtension.get();
-
-         Subnet subnet = subnets.get(region);
-         Pool pool1 = null;
-         Pool pool2 = null;
-         VIP vip = null;
-
-         try {
-            // Create pools
-            Pool.CreateBuilder createBuilder = Pool.createBuilder(subnet.getId(), Protocol.HTTP, Pool.ROUND_ROBIN)
-                  .name("jclouds-lbaas-test-vip-pool-1").description(null).healthMonitors(null).provider(null).adminStateUp(null);
-            pool1 = lbaasApi.createPool(createBuilder.build());
-            assertNotNull(pool1);
-            createBuilder.name("jclouds-lbaas-test-vip-pool-2");
-            pool2 = lbaasApi.createPool(createBuilder.build());
-            assertNotNull(pool2);
-
-            // Create
-            VIP.CreateVIP createVIP = VIP.createBuilder(subnet.getId(), Protocol.HTTP, 80, pool1.getId())
-                  .name("jclouds-lbaas-test-vip").description(null).address(null).sessionPersistence(null).connectionLimit(null).build();
-            vip = lbaasApi.createVIP(createVIP);
-            assertNotNull(vip);
-            assertNotNull(vip.getId());
-            assertEquals(vip.getTenantId(), subnet.getTenantId());
-            assertEquals(vip.getName(), "jclouds-lbaas-test-vip");
-            assertEquals(vip.getDescription(), "");
-            assertEquals(vip.getSubnetId(), subnet.getId());
-            assertNotNull(vip.getAddress());
-            assertNotNull(vip.getPortId());
-            assertEquals(vip.getProtocol(), Protocol.HTTP);
-            assertEquals(vip.getProtocolPort(), Integer.valueOf(80));
-            assertEquals(vip.getPoolId(), pool1.getId());
-            assertNull(vip.getSessionPersistence());
-            assertEquals(vip.getConnectionLimit(), Integer.valueOf(-1));
-            assertEquals(vip.getAdminStateUp(), Boolean.TRUE);
-            assertTrue(vip.getStatus() == LBaaSStatus.PENDING_CREATE || vip.getStatus() == LBaaSStatus.ACTIVE);
-            assertNull(vip.getStatusDescription());
-
-            // List and Get
-            VIPs vips = lbaasApi.listVIPs(PaginationOptions.Builder.queryParameters(ImmutableMap.of("tenant_id", subnet.getTenantId()).asMultimap()));
-            assertNotNull(vips);
-            assertFalse(vips.isEmpty());
-            VIP vipList = vips.first().get();
-            VIP vipGet = lbaasApi.getVIP(vipList.getId());
-            assertNotNull(vipGet);
-            assertEquals(vipGet, vipList);
-
-            vipGet = lbaasApi.getVIP(vip.getId());
-            assertNotNull(vipGet);
-            assertEquals(vipGet.getId(), vip.getId());
-
-            // Verify VIP appears in pool1 and not in pool2
-            Pool pool1Get = lbaasApi.getPool(pool1.getId());
-            assertNotNull(pool1Get);
-            assertEquals(pool1Get.getVIPId(), vip.getId());
-            Pool pool2Get = lbaasApi.getPool(pool2.getId());
-            assertNotNull(pool2Get);
-            assertNotEquals(pool2Get.getVIPId(), vip.getId());
-
-            // Update
-            SessionPersistence sessionPersistence = SessionPersistence.builder().type(SessionPersistence.Type.HTTP_COOKIE).cookieName(null).build();
-            VIP.UpdateVIP updateVIP = VIP.updateBuilder()
-                  .name("jclouds-lbaas-test-vip-renamed").description("new description").poolId(pool2.getId())
-                  .sessionPersistence(sessionPersistence).connectionLimit(2).adminStateUp(Boolean.FALSE).build();
-            VIP vipUpdate = lbaasApi.updateVIP(vip.getId(), updateVIP);
-            assertNotNull(vipUpdate);
-            assertEquals(vipUpdate.getName(), "jclouds-lbaas-test-vip-renamed");
-            assertEquals(vipUpdate.getDescription(), "new description");
-            assertEquals(vipUpdate.getPoolId(), pool2.getId());
-            assertEquals(vipUpdate.getSessionPersistence(), sessionPersistence);
-            assertEquals(vipUpdate.getConnectionLimit(), Integer.valueOf(2));
-            assertEquals(vipUpdate.getAdminStateUp(), Boolean.FALSE);
-
-            vipGet = lbaasApi.getVIP(vip.getId());
-            assertNotNull(vipGet);
-            assertNotNull(vipGet.getId());
-            assertEquals(vipGet.getTenantId(), subnet.getTenantId());
-            assertEquals(vipGet.getName(), "jclouds-lbaas-test-vip-renamed");
-            assertEquals(vipGet.getDescription(), "new description");
-            assertEquals(vipGet.getSubnetId(), subnet.getId());
-            assertNotNull(vipGet.getAddress());
-            assertNotNull(vipGet.getPortId());
-            assertEquals(vipGet.getProtocol(), Protocol.HTTP);
-            assertEquals(vipGet.getProtocolPort(), Integer.valueOf(80));
-            assertEquals(vipGet.getPoolId(), pool2.getId());
-            assertEquals(vipGet.getSessionPersistence(), sessionPersistence);
-            assertEquals(vipGet.getConnectionLimit(), Integer.valueOf(2));
-            assertEquals(vipGet.getAdminStateUp(), Boolean.FALSE);
-            assertTrue(vipGet.getStatus() == LBaaSStatus.PENDING_UPDATE || vipGet.getStatus() == LBaaSStatus.ACTIVE);
-            assertNull(vipGet.getStatusDescription());
-
-            // Verify VIP appears in pool2 and not in pool1
-            pool1Get = lbaasApi.getPool(pool1.getId());
-            assertNotNull(pool1Get);
-            assertNotEquals(pool1Get.getVIPId(), vip.getId());
-            pool2Get = lbaasApi.getPool(pool2.getId());
-            assertNotNull(pool2Get);
-            assertEquals(pool2Get.getVIPId(), vip.getId());
-         } finally {
-            if (vip != null) {
-               // Delete
-               assertTrue(lbaasApi.deleteVIP(vip.getId()));
-               VIP vipGet = lbaasApi.getVIP(vip.getId());
-               assertNull(vipGet);
-
-               // Verify VIP does not appear in pool1 and in pool2
-               Pool pool1Get = lbaasApi.getPool(pool1.getId());
-               assertNotNull(pool1Get);
-               assertNotEquals(pool1Get.getVIPId(), vip.getId());
-               Pool pool2Get = lbaasApi.getPool(pool2.getId());
-               assertNotNull(pool2Get);
-               assertNotEquals(pool2Get.getVIPId(), vip.getId());
-            }
-            if (pool2 != null) {
-               assertTrue(lbaasApi.deletePool(pool2.getId()));
-            }
-            if (pool1 != null) {
-               assertTrue(lbaasApi.deletePool(pool1.getId()));
-            }
-         }
-      }
-   }
-
-   public void testCreateUpdateAndDeleteHealthMonitor() {
-      for (String region : api.getConfiguredRegions()) {
-         Optional<LBaaSApi> lbaasApiExtension = api.getLBaaSApi(region);
-         if (!lbaasApiExtension.isPresent()) {
-            continue;
-         }
-         LBaaSApi lbaasApi = lbaasApiExtension.get();
-
-         Subnet subnet = subnets.get(region);
-         HealthMonitor healthMonitor = null;
-
-         try {
-            // Create
-            HealthMonitor.CreateHealthMonitor createHealthMonitor = HealthMonitor.createBuilder(ProbeType.HTTP, Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1))
-                  .httpMethod(null).urlPath(null).expectedCodes(null).adminStateUp(null).build();
-            healthMonitor = lbaasApi.createHealthMonitor(createHealthMonitor);
-            assertNotNull(healthMonitor);
-            assertNotNull(healthMonitor.getId());
-            assertEquals(healthMonitor.getTenantId(), subnet.getTenantId());
-            assertEquals(healthMonitor.getType(), ProbeType.HTTP);
-            assertEquals(healthMonitor.getDelay(), Integer.valueOf(1));
-            assertEquals(healthMonitor.getTimeout(), Integer.valueOf(1));
-            assertEquals(healthMonitor.getMaxRetries(), Integer.valueOf(1));
-            assertEquals(healthMonitor.getHttpMethod(), HttpMethod.GET);
-            assertEquals(healthMonitor.getUrlPath(), "/");
-            assertEquals(healthMonitor.getExpectedCodes(), "200");
-            assertNotNull(healthMonitor.getPools());
-            assertTrue(healthMonitor.getPools().isEmpty());
-            assertEquals(healthMonitor.getAdminStateUp(), Boolean.TRUE);
-            //assertEquals(healthMonitor.getStatus(), LBaaSStatus.PENDING_CREATE);
-            assertNull(healthMonitor.getStatus());
-            assertNull(healthMonitor.getStatusDescription());
-
-            // List and Get
-            HealthMonitors healthMonitors = lbaasApi.listHealthMonitors(PaginationOptions.Builder.queryParameters(ImmutableMap.of("tenant_id", subnet.getTenantId()).asMultimap()));
-            assertNotNull(healthMonitors);
-            assertFalse(healthMonitors.isEmpty());
-            HealthMonitor healthMonitorList = healthMonitors.first().get();
-            HealthMonitor healthMonitorGet = lbaasApi.getHealthMonitor(healthMonitorList.getId());
-            assertNotNull(healthMonitorGet);
-            assertEquals(healthMonitorGet, healthMonitorList);
-
-            healthMonitorGet = lbaasApi.getHealthMonitor(healthMonitor.getId());
-            assertNotNull(healthMonitorGet);
-            assertEquals(healthMonitorGet.getId(), healthMonitor.getId());
-
-            // Update
-            HealthMonitor.UpdateHealthMonitor updateHealthMonitor = HealthMonitor.updateBuilder().delay(Integer.valueOf(2)).timeout(Integer.valueOf(2)).maxRetries(Integer.valueOf(2))
-                  .httpMethod(HttpMethod.HEAD).urlPath("/index.html").expectedCodes("201").adminStateUp(Boolean.FALSE).build();
-            HealthMonitor healthMonitorUpdate = lbaasApi.updateHealthMonitor(healthMonitor.getId(), updateHealthMonitor);
-            assertNotNull(healthMonitorUpdate);
-            assertEquals(healthMonitorUpdate.getDelay(), Integer.valueOf(2));
-            assertEquals(healthMonitorUpdate.getTimeout(), Integer.valueOf(2));
-            assertEquals(healthMonitorUpdate.getMaxRetries(), Integer.valueOf(2));
-            assertEquals(healthMonitorUpdate.getHttpMethod(), HttpMethod.HEAD);
-            assertEquals(healthMonitorUpdate.getUrlPath(), "/index.html");
-            assertEquals(healthMonitorUpdate.getExpectedCodes(), "201");
-            assertEquals(healthMonitorUpdate.getAdminStateUp(), Boolean.FALSE);
-
-            healthMonitorGet = lbaasApi.getHealthMonitor(healthMonitor.getId());
-            assertNotNull(healthMonitorGet);
-            assertNotNull(healthMonitorGet.getId());
-            assertEquals(healthMonitorGet.getTenantId(), subnet.getTenantId());
-            assertEquals(healthMonitorGet.getType(), ProbeType.HTTP);
-            assertEquals(healthMonitorGet.getDelay(), Integer.valueOf(2));
-            assertEquals(healthMonitorGet.getTimeout(), Integer.valueOf(2));
-            assertEquals(healthMonitorGet.getMaxRetries(), Integer.valueOf(2));
-            assertEquals(healthMonitorGet.getHttpMethod(), HttpMethod.HEAD);
-            assertEquals(healthMonitorGet.getUrlPath(), "/index.html");
-            assertEquals(healthMonitorGet.getExpectedCodes(), "201");
-            assertNotNull(healthMonitorGet.getPools());
-            assertTrue(healthMonitorGet.getPools().isEmpty());
-            assertEquals(healthMonitorGet.getAdminStateUp(), Boolean.FALSE);
-            //assertEquals(healthMonitorGet.getStatus(), LBaaSStatus.PENDING_UPDATE);
-            assertNull(healthMonitorGet.getStatus());
-            assertNull(healthMonitorGet.getStatusDescription());
-         } finally {
-            if (healthMonitor != null) {
-               // Delete
-               assertTrue(lbaasApi.deleteHealthMonitor(healthMonitor.getId()));
-               HealthMonitor healthMonitorGet = lbaasApi.getHealthMonitor(healthMonitor.getId());
-               assertNull(healthMonitorGet);
-            }
-         }
-      }
-   }
-
-   public void testAssociateAndDisassociateHealthMonitorWithPool() {
-      for (String region : api.getConfiguredRegions()) {
-         Optional<LBaaSApi> lbaasApiExtension = api.getLBaaSApi(region);
-         if (!lbaasApiExtension.isPresent()) {
-            continue;
-         }
-         LBaaSApi lbaasApi = lbaasApiExtension.get();
-
-         Subnet subnet = subnets.get(region);
-         Pool pool = null;
-         HealthMonitor healthMonitor = null;
-
-         try {
-            // Create pool
-            Pool.CreatePool poolCreateOptions = Pool.createBuilder(subnet.getId(), Protocol.TCP, Pool.ROUND_ROBIN)
-                  .name("jclouds-lbaas-test-pool-association").build();
-            pool = lbaasApi.createPool(poolCreateOptions);
-            assertNotNull(pool);
-            assertNotNull(pool.getId());
-            assertNotNull(pool.getHealthMonitors());
-            assertTrue(pool.getHealthMonitors().isEmpty());
-            assertNotNull(pool.getHealthMonitorsStatus());
-            assertTrue(pool.getHealthMonitorsStatus().isEmpty());
-
-            // Create health monitor
-            HealthMonitor.CreateHealthMonitor healthMonitorCreateOptions = HealthMonitor.createBuilder(ProbeType.HTTP, Integer.valueOf(1), Integer.valueOf(1), Integer.valueOf(1)).build();
-            healthMonitor = lbaasApi.createHealthMonitor(healthMonitorCreateOptions);
-            assertNotNull(healthMonitor);
-            assertNotNull(healthMonitor.getId());
-            assertNotNull(healthMonitor.getPools());
-            assertTrue(healthMonitor.getPools().isEmpty());
-
-            // Associate health monitor with pool
-            HealthMonitor healthMonitorAssociated = lbaasApi.associateHealthMonitor(pool.getId(), healthMonitor.getId());
-            assertNotNull(healthMonitorAssociated);
-
-            // Verify health monitor is associated with pool
-            Pool poolGet = lbaasApi.getPool(pool.getId());
-            assertNotNull(poolGet);
-            assertNotNull(poolGet.getHealthMonitors());
-            assertEquals(poolGet.getHealthMonitors().size(), 1);
-            assertEquals(poolGet.getHealthMonitors().iterator().next(), healthMonitor.getId());
-            assertNotNull(poolGet.getHealthMonitorsStatus());
-            assertEquals(poolGet.getHealthMonitorsStatus().size(), 1);
-            assertEquals(poolGet.getHealthMonitorsStatus().iterator().next().getId(), healthMonitor.getId());
-
-            HealthMonitor healthMonitorGet = lbaasApi.getHealthMonitor(healthMonitor.getId());
-            assertNotNull(healthMonitorGet);
-            assertNotNull(healthMonitorGet.getPools());
-            assertEquals(healthMonitorGet.getPools().size(), 1);
-            assertEquals(healthMonitorGet.getPools().iterator().next().getId(), pool.getId());
-
-            // Disassociate health monitor from pool
-            assertTrue(lbaasApi.disassociateHealthMonitor(pool.getId(), healthMonitor.getId()));
-
-            // Verify health monitor is disassociated from pool
-            poolGet = lbaasApi.getPool(pool.getId());
-            assertNotNull(poolGet);
-            assertNotNull(poolGet.getHealthMonitors());
-            assertTrue(poolGet.getHealthMonitors().isEmpty());
-            assertNotNull(poolGet.getHealthMonitorsStatus());
-            assertTrue(poolGet.getHealthMonitorsStatus().isEmpty());
-
-            healthMonitorGet = lbaasApi.getHealthMonitor(healthMonitor.getId());
-            assertNotNull(healthMonitorGet);
-            assertNotNull(healthMonitorGet.getPools());
-            assertTrue(healthMonitorGet.getPools().isEmpty());
-         } finally {
-            if (healthMonitor != null) {
-               assertTrue(lbaasApi.deleteHealthMonitor(healthMonitor.getId()));
-            }
-            if (pool != null) {
-               assertTrue(lbaasApi.deletePool(pool.getId()));
-            }
-         }
-      }
-   }
-
-}