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

[05/32] jclouds-labs git commit: JCLOUDS-780 Remove vcloud-director.

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/775b89fd/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/GroupApiExpectTest.java
----------------------------------------------------------------------
diff --git a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/GroupApiExpectTest.java b/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/GroupApiExpectTest.java
deleted file mode 100644
index 60eb9a7..0000000
--- a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/GroupApiExpectTest.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.vcloud.director.v1_5.features.admin;
-
-import static org.testng.Assert.assertEquals;
-
-import java.net.URI;
-
-import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType;
-import org.jclouds.vcloud.director.v1_5.admin.VCloudDirectorAdminApi;
-import org.jclouds.vcloud.director.v1_5.domain.Group;
-import org.jclouds.vcloud.director.v1_5.domain.Reference;
-import org.jclouds.vcloud.director.v1_5.internal.VCloudDirectorAdminApiExpectTest;
-import org.testng.annotations.Test;
-
-@Test(groups = { "unit", "admin" }, singleThreaded = true, testName = "GroupApiExpectTest")
-public class GroupApiExpectTest extends VCloudDirectorAdminApiExpectTest {
-   
-   private Reference groupRef = Reference.builder()
-         .type("application/vnd.vmware.admin.group+xml")
-         .name("fff")
-         .href(URI.create(endpoint + "/admin/group/fff"))
-         .build();
-   
-   @Test(enabled = false)
-   public void testGetGroup() {
-      VCloudDirectorAdminApi api = requestsSendResponses(loginRequest, sessionResponse, 
-         new VcloudHttpRequestPrimer()
-            .apiCommand("GET", "/admin/group/fff")
-            .acceptAnyMedia()
-            .httpRequestBuilder().build(), 
-         new VcloudHttpResponsePrimer()
-            .xmlFilePayload("/group/group.xml", VCloudDirectorMediaType.GROUP)
-            .httpResponseBuilder().build());
-
-      Group expected = group();
-
-      assertEquals(api.getGroupApi().get(groupRef.getHref()), expected);
-   }
-   
-   public static final Group group() {
-      return Group.builder()
-         
-         .build();
-   }
-   
-   @Test(enabled = false)
-   public void testEditGroup() {
-      VCloudDirectorAdminApi api = requestsSendResponses(loginRequest, sessionResponse, 
-         new VcloudHttpRequestPrimer()
-            .apiCommand("PUT", "/admin/group/fff")
-            .xmlFilePayload("/group/editGroupSource.xml", VCloudDirectorMediaType.GROUP)
-            .acceptMedia(VCloudDirectorMediaType.GROUP)
-            .httpRequestBuilder().build(), 
-         new VcloudHttpResponsePrimer()
-            .xmlFilePayload("/group/editGroup.xml", VCloudDirectorMediaType.GROUP)
-            .httpResponseBuilder().build());
-
-      Group expected = editGroup();
-
-      assertEquals(api.getGroupApi().edit(groupRef.getHref(), expected), expected);
-   }
-   
-   public static Group editGroup() {
-      return null; // TODO chain onto group() then toBuilder() and edit?
-   }
-   
-   @Test
-   public void testRemoveGroup() {
-      VCloudDirectorAdminApi api = requestsSendResponses(loginRequest, sessionResponse, 
-            new VcloudHttpRequestPrimer()
-               .apiCommand("DELETE", "/admin/group/fff")
-               .acceptAnyMedia()
-               .httpRequestBuilder().build(), 
-            new VcloudHttpResponsePrimer()
-               .httpResponseBuilder().statusCode(204).build());
-      
-      api.getGroupApi().remove(groupRef.getHref());
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/775b89fd/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/GroupApiLiveTest.java
----------------------------------------------------------------------
diff --git a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/GroupApiLiveTest.java b/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/GroupApiLiveTest.java
deleted file mode 100644
index 90db76a..0000000
--- a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/GroupApiLiveTest.java
+++ /dev/null
@@ -1,132 +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.vcloud.director.v1_5.features.admin;
-
-import static com.google.common.base.Objects.equal;
-import static org.jclouds.vcloud.director.v1_5.VCloudDirectorLiveTestConstants.OBJ_FIELD_UPDATABLE;
-import static org.testng.Assert.assertTrue;
-import static org.testng.Assert.fail;
-
-import org.jclouds.vcloud.director.v1_5.VCloudDirectorException;
-import org.jclouds.vcloud.director.v1_5.domain.Checks;
-import org.jclouds.vcloud.director.v1_5.domain.Group;
-import org.jclouds.vcloud.director.v1_5.domain.Reference;
-import org.jclouds.vcloud.director.v1_5.domain.org.OrgLdapSettings;
-import org.jclouds.vcloud.director.v1_5.internal.BaseVCloudDirectorApiLiveTest;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-@Test(groups = { "live", "admin" }, singleThreaded = true, testName = "GroupApiLiveTest")
-public class GroupApiLiveTest extends BaseVCloudDirectorApiLiveTest {
-   
-   public static final String GROUP = "admin group";
-
-   /*
-    * Convenience references to API apis.
-    */
-   private GroupApi groupApi;
-
-   /*
-    * Shared state between dependant tests.
-    */
-   private Group group;
-   private OrgLdapSettings oldLdapSettings;
-   private OrgLdapSettings newLdapSettings;
-   
-   @Override
-   @BeforeClass(alwaysRun = true)
-   public void setupRequiredApis() {
-      groupApi = adminContext.getApi().getGroupApi();
-      Reference orgRef = null;
-      
-      // TODO: requisite LDAP settings
-//      oldLdapSettings = adminContext.getApi().getAdminOrgApi().getLdapSettings(orgRef.getHref());
-//      OrgLdapSettings newLdapSettings = oldLdapSettings.toBuilder()
-//         .ldapMode(OrgLdapSettings.LdapMode.SYSTEM)  
-//         .build();
-//      context.getApi().getAdminOrgApi().editLdapSettings(newLdapSettings);
-   }
-   
-   @Test(description = "POST /admin/org/{id}/groups")
-   public void testAddGroup() {
-      fail("LDAP not configured, group api isn't currently testable.");
-//      group = groupApi.createGroup(orgUri, Group.builder()
-//         .build();
-      
-      Checks.checkGroup(group);
-   }
-   
-   @Test(description = "GET /admin/group/{id}", dependsOnMethods = { "testAddGroup" })
-   public void testGetGroup() {
-      group = groupApi.get(group.getHref());
-      
-      Checks.checkGroup(group);
-   }
-   
-   @Test(description = "PUT /admin/group/{id}", dependsOnMethods = { "testGetGroup" } )
-   public void testEditGroup() {
-      String oldName = group.getName();
-      String newName = "new " + oldName;
-      String oldDescription = group.getDescription();
-      String newDescription = "new " + oldDescription;
-      //TODO: check other modifiables
-      
-      try {
-         group = group.toBuilder()
-               .name(newName)
-               .description(newDescription)
-               .build();
-         
-         group = groupApi.edit(group.getHref(), group);
-         
-         assertTrue(equal(group.getName(), newName), String.format(OBJ_FIELD_UPDATABLE, GROUP, "name"));
-         assertTrue(equal(group.getDescription(), newDescription),
-               String.format(OBJ_FIELD_UPDATABLE, GROUP, "description"));
-         
-         //TODO negative tests?
-         
-         Checks.checkGroup(group);
-      } finally {
-         group = group.toBuilder()
-               .name(oldName)
-               .description(oldDescription)
-               .build();
-         
-         group = groupApi.edit(group.getHref(), group);
-      }
-   }
-   
-   @Test(description = "DELETE /admin/group/{id}", dependsOnMethods = { "testEditGroup" } )
-   public void testRemoveGroup() {
-      groupApi.remove(group.getHref());
-      
-      // TODO stronger assertion of error expected
-//      Error expected = Error.builder()
-//            .message("???")
-//            .majorErrorCode(403)
-//            .minorErrorCode("ACCESS_TO_RESOURCE_IS_FORBIDDEN")
-//            .build();
-      
-      try {
-         group = groupApi.get(group.getHref());
-         fail("Should give HTTP 403 error");
-      } catch (VCloudDirectorException vde) {
-         // success
-         group = null;
-      }
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/775b89fd/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/UserApiExpectTest.java
----------------------------------------------------------------------
diff --git a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/UserApiExpectTest.java b/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/UserApiExpectTest.java
deleted file mode 100644
index 12039f0..0000000
--- a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/UserApiExpectTest.java
+++ /dev/null
@@ -1,225 +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.vcloud.director.v1_5.features.admin;
-
-import static org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType.ERROR;
-import static org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType.ORG;
-import static org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType.USER;
-import static org.testng.Assert.assertEquals;
-
-import java.net.URI;
-
-import org.jclouds.http.HttpRequest;
-import org.jclouds.http.HttpResponse;
-import org.jclouds.rest.ResourceNotFoundException;
-import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType;
-import org.jclouds.vcloud.director.v1_5.admin.VCloudDirectorAdminApi;
-import org.jclouds.vcloud.director.v1_5.domain.Link;
-import org.jclouds.vcloud.director.v1_5.domain.Reference;
-import org.jclouds.vcloud.director.v1_5.domain.User;
-import org.jclouds.vcloud.director.v1_5.internal.VCloudDirectorAdminApiExpectTest;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.ImmutableList;
-import com.google.common.net.HttpHeaders;
-
-@Test(groups = { "unit", "admin" }, singleThreaded = true, testName = "UserApiExpectTest")
-public class UserApiExpectTest extends VCloudDirectorAdminApiExpectTest {
-   
-   private static String user = "7212e451-76e1-4631-b2de-ba1dfd8080e4";
-   private static URI userHref = URI.create(endpoint + "/user/" + user);
-   
-   private static String org = "7212e451-76e1-4631-b2de-asdasdasd";
-   private static URI orgAdminHref = URI.create(endpoint + "/admin/org/" + org);
-   
-   private HttpRequest add = HttpRequest.builder()
-            .method("POST")
-            .endpoint(orgAdminHref + "/users")
-            .addHeader("Accept", USER)
-            .addHeader("x-vcloud-authorization", token)
-            .addHeader(HttpHeaders.COOKIE, "vcloud-token=" + token)
-            .payload(payloadFromResourceWithContentType("/user/addUserSource.xml", VCloudDirectorMediaType.USER))
-            .build();
-
-   private HttpResponse addResponse = HttpResponse.builder()
-            .statusCode(200)
-            .payload(payloadFromResourceWithContentType("/user/addUser.xml", USER + ";version=1.5"))
-            .build();
-    
-   @Test
-   public void testAddUserHref() {
-      VCloudDirectorAdminApi api = requestsSendResponses(loginRequest, sessionResponse, add, addResponse);
-      assertEquals(api.getUserApi().addUserToOrg(addUserSource(), orgAdminHref), addUser());
-   }
-
-   HttpRequest get = HttpRequest.builder()
-            .method("GET")
-            .endpoint(userHref)
-            .addHeader("Accept", "*/*")
-            .addHeader("x-vcloud-authorization", token)
-            .addHeader(HttpHeaders.COOKIE, "vcloud-token=" + token)
-            .build();
-
-    HttpResponse getResponse = HttpResponse.builder()
-            .statusCode(200)
-            .payload(payloadFromResourceWithContentType("/user/user.xml", ORG + ";version=1.5"))
-            .build();
-    
-   @Test
-   public void testGetUserHref() {
-      VCloudDirectorAdminApi api = requestsSendResponses(loginRequest, sessionResponse, get, getResponse);
-      assertEquals(api.getUserApi().get(userHref), user());
-   }
-
-   HttpRequest edit = HttpRequest.builder()
-            .method("PUT")
-            .endpoint(userHref)
-            .addHeader("Accept", USER)
-            .addHeader("x-vcloud-authorization", token)
-            .addHeader(HttpHeaders.COOKIE, "vcloud-token=" + token)
-            .payload(payloadFromResourceWithContentType("/user/editUserSource.xml", USER))
-            .build();
-
-   HttpResponse editResponse = HttpResponse.builder()
-            .statusCode(200)
-            .payload(payloadFromResourceWithContentType("/user/editUser.xml", USER))
-            .build();
-
-   @Test
-   public void testEditUserHref() {
-      VCloudDirectorAdminApi api = requestsSendResponses(loginRequest, sessionResponse, edit, editResponse);
-      assertEquals(api.getUserApi().edit(userHref, editUserSource()), editUser());
-   }
-
-   HttpRequest unlock = HttpRequest.builder()
-            .method("POST")
-            .endpoint(userHref + "/action/unlock")
-            .addHeader("Accept", "*/*")
-            .addHeader("x-vcloud-authorization", token)
-            .addHeader(HttpHeaders.COOKIE, "vcloud-token=" + token)
-            .build();
-
-   HttpResponse unlockResponse = HttpResponse.builder()
-            .statusCode(204)
-            .build();
-
-   @Test
-   public void testUnlockUserHref() {
-      VCloudDirectorAdminApi api = requestsSendResponses(loginRequest, sessionResponse, unlock, unlockResponse);
-      api.getUserApi().unlock(userHref);
-   }
-   
-   @Test(expectedExceptions = ResourceNotFoundException.class)
-   public void testUnlockUserHrefNotFound() {
-      VCloudDirectorAdminApi api = requestsSendResponses(loginRequest, sessionResponse, unlock,  HttpResponse.builder()
-               .statusCode(403)
-               .payload(payloadFromResourceWithContentType("/org/error400.xml", ERROR))
-               .build());
-      api.getUserApi().unlock(userHref);
-   }
-
-   HttpRequest remove = HttpRequest.builder()
-            .method("DELETE")
-            .endpoint(userHref)
-            .addHeader("Accept", "*/*")
-            .addHeader("x-vcloud-authorization", token)
-            .addHeader(HttpHeaders.COOKIE, "vcloud-token=" + token).build();
-
-   HttpResponse removeResponse = HttpResponse.builder()
-            .statusCode(200)
-            .build();
-      
-   @Test
-   public void testRemoveUserHref() {
-      VCloudDirectorAdminApi api = requestsSendResponses(loginRequest, sessionResponse, remove, removeResponse);
-      api.getUserApi().remove(userHref);
-   }
-
-   public static final User addUserSource() {
-      return User.builder()
-            .name("test")
-            .fullName("testFullName")
-            .emailAddress("test@test.com")
-            .telephone("555-1234")
-            .isEnabled(false)
-            .im("testIM")
-            .isAlertEnabled(false)
-            .alertEmailPrefix("testPrefix")
-            .alertEmail("testAlert@test.com")
-            .isExternal(false)
-            .isGroupRole(false)
-            .role(Reference.builder()
-               .type("application/vnd.vmware.admin.role+xml")
-               .name("vApp User")
-               .href(URI.create("https://vcloudbeta.bluelock.com/api/admin/role/ff1e0c91-1288-3664-82b7-a6fa303af4d1"))
-               .build())
-            .password("password")
-            .groups(ImmutableList.<Reference>of())
-            .build();
-   }
-   
-   public static final User addUser() {
-      return addUserSource().toBuilder()
-         .id("urn:vcloud:user:b37223f3-8792-477a-820f-334998f61cd6")
-         .type("application/vnd.vmware.admin.user+xml")
-         .href(URI.create("https://vcloudbeta.bluelock.com/api/admin/user/b37223f3-8792-477a-820f-334998f61cd6"))
-         .link(Link.builder()
-            .rel("edit")
-            .type("application/vnd.vmware.admin.user+xml")
-            .href(URI.create("https://vcloudbeta.bluelock.com/api/admin/user/b37223f3-8792-477a-820f-334998f61cd6"))
-            .build())
-         .link(Link.builder()
-            .rel("remove")
-            .href(URI.create("https://vcloudbeta.bluelock.com/api/admin/user/b37223f3-8792-477a-820f-334998f61cd6"))
-            .build())
-         .isLocked(false)
-         .isDefaultCached(false)
-         .storedVmQuota(0)
-         .deployedVmQuota(0)
-         .password(null)
-         .build();
-   }
-   
-   public static final User user() {
-      return addUser().toBuilder()
-         .nameInSource("test")
-         .build();
-   }
-
-   public static final User editUserSource() {
-      return user().toBuilder()
-         .fullName("new" + user().getFullName())
-         .emailAddress("new" + user().getEmailAddress())
-         .telephone("1-" + user().getTelephone())
-         .isEnabled(true)
-         .im("new" + user().getIM())
-         .isAlertEnabled(true)
-         .alertEmailPrefix("new" + user().getAlertEmailPrefix())
-         .alertEmail("new" + user().getAlertEmail())
-         .storedVmQuota(1)
-         .deployedVmQuota(1)
-         .password("newPassword")
-         .build();
-   }
-   
-   public static final User editUser() {
-      return editUserSource().toBuilder()
-         .password(null)
-         .build();
-   }
- 
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/775b89fd/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/UserApiLiveTest.java
----------------------------------------------------------------------
diff --git a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/UserApiLiveTest.java b/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/UserApiLiveTest.java
deleted file mode 100644
index 7d0e9a0..0000000
--- a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/admin/UserApiLiveTest.java
+++ /dev/null
@@ -1,215 +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.vcloud.director.v1_5.features.admin;
-
-import static com.google.common.base.Objects.equal;
-import static org.jclouds.vcloud.director.v1_5.VCloudDirectorLiveTestConstants.OBJ_FIELD_UPDATABLE;
-import static org.jclouds.vcloud.director.v1_5.domain.Checks.checkUser;
-import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertNull;
-import static org.testng.Assert.assertTrue;
-import static org.testng.Assert.fail;
-import static org.testng.AssertJUnit.assertFalse;
-
-import java.net.URI;
-
-import org.jclouds.rest.AuthorizationException;
-import org.jclouds.vcloud.director.v1_5.domain.Role.DefaultRoles;
-import org.jclouds.vcloud.director.v1_5.domain.SessionWithToken;
-import org.jclouds.vcloud.director.v1_5.domain.User;
-import org.jclouds.vcloud.director.v1_5.domain.org.OrgPasswordPolicySettings;
-import org.jclouds.vcloud.director.v1_5.internal.BaseVCloudDirectorApiLiveTest;
-import org.jclouds.vcloud.director.v1_5.login.SessionApi;
-import org.testng.annotations.AfterClass;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-@Test(groups = { "live", "admin" }, singleThreaded = true, testName = "UserApiLiveTest")
-public class UserApiLiveTest extends BaseVCloudDirectorApiLiveTest {
-   
-   public static final String USER = "admin user";
-
-   /*
-    * Convenience references to API apis.
-    */
-   UserApi userApi;
-
-   /*
-    * Shared state between dependant tests.
-    */
-   private User user;
-
-   @Override
-   @BeforeClass(alwaysRun = true)
-   public void setupRequiredApis() {
-      userApi = adminContext.getApi().getUserApi();
-   }
-   
-   @AfterClass(alwaysRun = true)
-   public void cleanUp() throws Exception {
-      if (user != null) {
-         try {
-            userApi.remove(user.getHref());
-         } catch (Exception e) {
-            logger.warn(e, "Error deleting user '%s'", user.getName());
-         }
-      }
-   }
-   
-   @Test(description = "POST /admin/org/{id}/users")
-   public void testAddUser() {
-      User newUser = randomTestUser("testAddUser");
-      user = userApi.addUserToOrg(newUser, org.getHref());
-      checkUser(newUser);
-   }
-   
-   @Test(description = "GET /admin/user/{id}", dependsOnMethods = { "testAddUser" })
-   public void testGetUser() {
-      user = userApi.get(user.getHref());
-      
-      checkUser(user);
-   }
- 
-   @Test(description = "PUT /admin/user/{id}", dependsOnMethods = { "testGetUser" })
-   public void testEditUser() {
-      User oldUser = user.toBuilder().build();
-      User newUser = user.toBuilder()
-         .fullName("new" + oldUser.getFullName())
-         .emailAddress("new" + oldUser.getEmailAddress())
-         .telephone("1-" + oldUser.getTelephone())
-         .isEnabled(true)
-         .im("new" + oldUser.getIM())
-         .isAlertEnabled(true)
-         .alertEmailPrefix("new" + oldUser.getAlertEmailPrefix())
-         .alertEmail("new" + oldUser.getAlertEmail())
-         .storedVmQuota(1)
-         .deployedVmQuota(1)
-         .password("newPassword")
-         // TODO test setting other fields?
-//         .name("new" + oldUser.getName())
-         .role(getRoleReferenceFor(DefaultRoles.AUTHOR.value()))
-         .build();
-      
-      userApi.edit(user.getHref(), newUser);
-      user = userApi.get(user.getHref());
-      
-      checkUser(user);
-      assertTrue(equal(user.getFullName(), newUser.getFullName()), 
-            String.format(OBJ_FIELD_UPDATABLE, USER, "fullName"));
-      assertTrue(equal(user.getEmailAddress(), newUser.getEmailAddress()), 
-            String.format(OBJ_FIELD_UPDATABLE, USER, "emailAddress"));
-      assertTrue(equal(user.getTelephone(), newUser.getTelephone()), 
-            String.format(OBJ_FIELD_UPDATABLE, USER, "telephone"));
-      assertTrue(equal(user.isEnabled(), newUser.isEnabled()), 
-            String.format(OBJ_FIELD_UPDATABLE, USER, "isEnabled"));
-      assertTrue(equal(user.getIM(), newUser.getIM()), 
-            String.format(OBJ_FIELD_UPDATABLE, USER, "im"));
-      assertTrue(equal(user.isAlertEnabled(), newUser.isAlertEnabled()), 
-            String.format(OBJ_FIELD_UPDATABLE, USER, "isAlertEnabled"));
-      assertTrue(equal(user.getAlertEmailPrefix(), newUser.getAlertEmailPrefix()), 
-            String.format(OBJ_FIELD_UPDATABLE, USER, "alertEmailPrefix"));
-      assertTrue(equal(user.getAlertEmail(), newUser.getAlertEmail()), 
-            String.format(OBJ_FIELD_UPDATABLE, USER, "alertEmail"));
-//         assertTrue(equal(user.getRole(), newUser.getRole()), 
-//               String.format(OBJ_FIELD_UPDATABLE, USER, "role"));
-      assertTrue(equal(user.getStoredVmQuota(), newUser.getStoredVmQuota()), 
-            String.format(OBJ_FIELD_UPDATABLE, USER, "storedVmQuota"));
-      assertTrue(equal(user.getDeployedVmQuota(), newUser.getDeployedVmQuota()), 
-            String.format(OBJ_FIELD_UPDATABLE, USER, "deployedVmQuota"));
-           
-      // session api isn't typically exposed to the user, as it is implicit
-      SessionApi sessionApi = context.utils().injector().getInstance(SessionApi.class);
-
-      // Check the user can really login with the changed password
-      // NOTE: the password is NOT returned in the User object returned from the server
-      SessionWithToken sessionWithToken = sessionApi.loginUserInOrgWithPassword(URI.create(endpoint + "/sessions"), user.getName(), org.getName(), "newPassword");
-      assertNotNull(sessionWithToken.getToken());
-      sessionApi.logoutSessionWithToken(sessionWithToken.getSession().getHref(), sessionWithToken.getToken());
-   }
- 
-   @Test(description = "POST /admin/user/{id}/action/unlock", dependsOnMethods = { "testEditUser" })
-   public void testUnlockUser() {
-      // Need to know how many times to fail login to lock account
-      AdminOrgApi adminOrgApi = adminContext.getApi().getOrgApi();
-      OrgPasswordPolicySettings settingsToRevertTo = null;
-
-      // session api isn't typically exposed to the user, as it is implicit
-      SessionApi sessionApi = context.utils().injector().getInstance(SessionApi.class);
-      
-      OrgPasswordPolicySettings settings = adminOrgApi.getSettings(org.getHref()).getPasswordPolicy();
-      assertNotNull(settings);
-
-      // Adjust account settings so we can lock the account - be careful to not set invalidLoginsBeforeLockout too low!
-      if (!settings.isAccountLockoutEnabled()) {
-         settingsToRevertTo = settings;
-         settings = settings.toBuilder().accountLockoutEnabled(true).invalidLoginsBeforeLockout(5).build();
-         settings = adminOrgApi.editPasswordPolicy(org.getHref(), settings);
-      }
-
-      assertTrue(settings.isAccountLockoutEnabled());
-      
-      for (int i = 0; i < settings.getInvalidLoginsBeforeLockout() + 1; i++) {
-         try {
-            sessionApi.loginUserInOrgWithPassword(URI.create(endpoint + "/sessions"), user.getName(), org.getName(), "wrongpassword!");
-            fail("Managed to login using the wrong password!");
-         } catch (AuthorizationException e) {
-         } catch (Exception e) {
-            fail("Expected AuthorizationException", e);
-         }
-      }
-      
-      user = userApi.get(user.getHref());
-      assertTrue(user.isLocked());
-
-      try {
-         sessionApi.loginUserInOrgWithPassword(URI.create(endpoint + "/sessions"), user.getName(), org.getName(), "newPassword");
-         fail("Managed to login to locked account!");
-      } catch (AuthorizationException e) {
-      } catch (Exception e) {
-         fail("Expected AuthorizationException", e);
-      }
-      
-      userApi.unlock(user.getHref());
-
-      user = userApi.get(user.getHref());
-      assertFalse(user.isLocked());
-
-      // Double-check the user can now login again
-      SessionWithToken sessionWithToken = sessionApi.loginUserInOrgWithPassword(URI.create(endpoint + "/sessions"), user.getName(), org.getName(), "newPassword");
-      assertNotNull(sessionWithToken.getToken());
-      sessionApi.logoutSessionWithToken(sessionWithToken.getSession().getHref(), sessionWithToken.getToken());
-      
-      // Return account settings to the previous values, if necessary
-      if (settingsToRevertTo != null) {
-         adminOrgApi.editPasswordPolicy(org.getHref(), settingsToRevertTo);
-      }
-   }
- 
-   @Test(description = "DELETE /admin/user/{id}", dependsOnMethods = { "testAddUser" })
-   public void testRemoveUser() {
-      // Create a user to be removed (so we remove dependencies on test ordering)
-      User newUser = randomTestUser("testRemoveUser" + getTestDateTimeStamp());
-      User userToBeDeleted = userApi.addUserToOrg(newUser, org.getHref());
-
-      // Delete the user
-      userApi.remove(userToBeDeleted.getHref());
-
-      // Confirm cannot no longer be accessed 
-      User removed = userApi.get(userToBeDeleted.getHref());
-      assertNull(removed);
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/775b89fd/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVAppApiExpectTest.java
----------------------------------------------------------------------
diff --git a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVAppApiExpectTest.java b/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVAppApiExpectTest.java
deleted file mode 100644
index 61cb6d9..0000000
--- a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVAppApiExpectTest.java
+++ /dev/null
@@ -1,517 +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.vcloud.director.v1_5.features.systemadmin;
-
-import java.net.URI;
-
-import org.jclouds.dmtf.ovf.NetworkSection;
-import org.jclouds.dmtf.ovf.StartupSection;
-import org.jclouds.vcloud.director.v1_5.domain.Error;
-import org.jclouds.vcloud.director.v1_5.domain.Link;
-import org.jclouds.vcloud.director.v1_5.domain.Owner;
-import org.jclouds.vcloud.director.v1_5.domain.ProductSectionList;
-import org.jclouds.vcloud.director.v1_5.domain.RasdItemsList;
-import org.jclouds.vcloud.director.v1_5.domain.Reference;
-import org.jclouds.vcloud.director.v1_5.domain.ScreenTicket;
-import org.jclouds.vcloud.director.v1_5.domain.Task;
-import org.jclouds.vcloud.director.v1_5.domain.VApp;
-import org.jclouds.vcloud.director.v1_5.domain.VmPendingQuestion;
-import org.jclouds.vcloud.director.v1_5.domain.VmQuestionAnswer;
-import org.jclouds.vcloud.director.v1_5.domain.dmtf.RasdItem;
-import org.jclouds.vcloud.director.v1_5.domain.params.ControlAccessParams;
-import org.jclouds.vcloud.director.v1_5.domain.section.GuestCustomizationSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.LeaseSettingsSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.NetworkConfigSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.NetworkConnectionSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.OperatingSystemSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.RuntimeInfoSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.VirtualHardwareSection;
-import org.jclouds.vcloud.director.v1_5.internal.VCloudDirectorAdminApiExpectTest;
-import org.jclouds.vcloud.director.v1_5.user.VCloudDirectorApi;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-import org.testng.internal.annotations.Sets;
-
-@Test(groups = { "unit", "systemAdmin" }, singleThreaded = true, testName = "SystemAdminVAppApiExpectTest")
-public class SystemAdminVAppApiExpectTest extends VCloudDirectorAdminApiExpectTest {
-   
-   private String vAppId = "vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be";
-   private URI vAppURI = URI.create(endpoint + vAppId);
-   
-   @BeforeClass
-   public void before() {
-   }
-   
-   @Test(enabled = false)
-   public void testEnterMaintenanceMode() {
-      VCloudDirectorApi api = requestsSendResponses(loginRequest, sessionResponse, 
-         new VcloudHttpRequestPrimer()
-            .apiCommand("POST", vAppId + "/action/enterMaintenanceMode")
-            .acceptAnyMedia()
-            .httpRequestBuilder().build(), 
-         new VcloudHttpResponsePrimer()
-            .httpResponseBuilder().statusCode(204).build());
-		
-		// TODO how to test?
-		api.getVAppApi().enterMaintenanceMode(vAppURI);
-   }
-
-   @Test(enabled = false)
-   public void testExitMaintenanceMode() {
-      VCloudDirectorApi api = requestsSendResponses(loginRequest, sessionResponse, 
-         new VcloudHttpRequestPrimer()
-            .apiCommand("POST", vAppId + "/action/exitMaintenanceMode")
-            .acceptAnyMedia()
-            .httpRequestBuilder().build(), 
-         new VcloudHttpResponsePrimer()
-            .httpResponseBuilder().statusCode(204).build());
-		
-		// TODO how to test?
-		api.getVAppApi().exitMaintenanceMode(vAppURI);
-   }
-
-   public static VApp getVApp() {
-      // FIXME Does not match XML
-      VApp vApp = VApp.builder()
-            .href(URI.create("https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be"))
-//            .link(Link.builder()
-//                     .href(URI.create())
-//                     .build())
-            .build();
-
-//      <Link rel="power:powerOn" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/power/action/powerOn"/>
-//      <Link rel="deploy" type="application/vnd.vmware.vcloud.deployVAppParams+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/action/deploy"/>
-//      <Link rel="down" type="application/vnd.vmware.vcloud.vAppNetwork+xml" name="orgNet-cloudsoft-External" href="https://mycloud.greenhousedata.com/api/network/2a2e2da4-446a-4ebc-a086-06df7c9570f0"/>
-//      <Link rel="down" type="application/vnd.vmware.vcloud.controlAccess+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/controlAccess/"/>
-//      <Link rel="controlAccess" type="application/vnd.vmware.vcloud.controlAccess+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/action/controlAccess"/>
-//      <Link rel="recompose" type="application/vnd.vmware.vcloud.recomposeVAppParams+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/action/recomposeVApp"/>
-//      <Link rel="up" type="application/vnd.vmware.vcloud.vdc+xml" href="https://mycloud.greenhousedata.com/api/vdc/e9cd3387-ac57-4d27-a481-9bee75e0690f"/>
-//      <Link rel="edit" type="application/vnd.vmware.vcloud.vApp+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be"/>
-//      <Link rel="remove" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be"/>
-//      <Link rel="down" type="application/vnd.vmware.vcloud.owner+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/owner"/>
-//      <Link rel="down" type="application/vnd.vmware.vcloud.metadata+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/metadata"/>
-      
-      return vApp;
-   }
-
-   public static Task editVAppTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task removeVAppTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task consolidateVAppTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static ControlAccessParams controlAccessParams() {
-      ControlAccessParams params = ControlAccessParams.builder()
-            .build();
-
-      return params;
-   }
-
-   public static Task deployTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task discardSuspendedStateTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task installVMwareToolsTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task recomposeVAppTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task relocateTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task undeployTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task upgradeHardwareVersionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task powerOffTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task powerOnTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task rebootTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task resetTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task shutdownTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task suspendTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static ControlAccessParams getAccessControlParams() {
-      ControlAccessParams params = ControlAccessParams.builder()
-            .build();
-
-      return params;
-   }
-
-   public static GuestCustomizationSection getGuestCustomizationSection() {
-      GuestCustomizationSection section = GuestCustomizationSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editGuestCustomizationSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static LeaseSettingsSection getLeaseSettingsSection() {
-      LeaseSettingsSection section = LeaseSettingsSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editLeaseSettingsSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task ejectMediaTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task insertMediaTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static NetworkConfigSection getNetworkConfigSection() {
-      NetworkConfigSection section = NetworkConfigSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editNetworkConfigSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static NetworkConnectionSection getNetworkConnectionSection() {
-      NetworkConnectionSection section = NetworkConnectionSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editNetworkConnectionSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static NetworkSection getNetworkSection() {
-      NetworkSection section = NetworkSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static OperatingSystemSection getOperatingSystemSection() {
-      OperatingSystemSection section = OperatingSystemSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editOperatingSystemSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Owner getOwner() {
-      Owner owner = Owner.builder()
-            .build();
-
-      return owner;
-   }
-
-   public static Task editOwnerTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static ProductSectionList getProductSections() {
-      ProductSectionList sectionItems = ProductSectionList.builder()
-            .build();
-
-      return sectionItems;
-   }
-
-   public static Task editProductSectionsTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static VmPendingQuestion getPendingQuestion() {
-      VmPendingQuestion question = VmPendingQuestion.builder()
-            .build();
-
-      return question;
-   }
-
-   public static VmQuestionAnswer answerQuestion() {
-      VmQuestionAnswer answer = null; // = VmQuestionAnswer.builder() 
-//            .build();
-
-      return answer;
-   }
-
-   public static RuntimeInfoSection getRuntimeInfoSection() {
-      RuntimeInfoSection section = RuntimeInfoSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static byte[] getScreenImage() {
-      byte[] image = new byte[0];
-
-      return image;
-   }
-
-   public static ScreenTicket getScreenTicket() {
-      ScreenTicket ticket = null; // = ScreenTicket.builder();
-//            .build();
-
-      return ticket;
-   }
-
-   public static StartupSection getStartupSection() {
-      StartupSection section = null; // = StartupSection.builder();
-//            .build();
-
-      return section;
-   }
-
-   public static Task editStartupSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static VirtualHardwareSection getVirtualHardwareSection() {
-      VirtualHardwareSection section = VirtualHardwareSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editVirtualHardwareSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static RasdItem getVirtualHardwareSectionCpu() {
-      RasdItem cpu = RasdItem.builder()
-            .build();
-
-      return cpu;
-   }
-
-   public static Task editVirtualHardwareSectionCpuTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static RasdItemsList getVirtualHardwareSectionDisks() {
-      RasdItemsList disks = RasdItemsList.builder()
-            .build();
-
-      return disks;
-   }
-
-   public static Task editVirtualHardwareSectionDisksTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static RasdItemsList getVirtualHardwareSectionMedia() {
-      RasdItemsList media = RasdItemsList.builder()
-            .build();
-
-      return media;
-   }
-
-   public static RasdItem getVirtualHardwareSectionMemory() {
-      RasdItem memory = RasdItem.builder()
-            .build();
-
-      return memory;
-   }
-
-   public static Task editVirtualHardwareSectionMemoryTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static RasdItemsList getVirtualHardwareSectionNetworkCards() {
-      RasdItemsList networkCards = RasdItemsList.builder()
-            .build();
-
-      return networkCards;
-   }
-
-   public static Task editVirtualHardwareSectionNetworkCardsTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static RasdItemsList getVirtualHardwareSectionSerialPorts() {
-      RasdItemsList serialPorts = RasdItemsList.builder()
-            .build();
-
-      return serialPorts;
-   }
-
-   public static Task editVirtualHardwareSectionSerialPortsTask() {
-      return task("id", "name", "description", "status", "operation", "operationName", "startTime");
-   }
-
-   /** Used by other methods to add a custom {@link Task} object. */
-   private static Task task(String taskId, String name, String description, String status, String operation, String operationName, String startTime) {
-      Task task = Task.builder()
-            .error(Error.builder().build())
-            .org(Reference.builder().build())
-            .owner(Reference.builder().build())
-            .user(Reference.builder().build())
-            .params(null)
-            .progress(0)
-            .status(status)
-            .operation(operation)
-            .operationName(operationName)
-            .startTime(dateService.iso8601DateParse(startTime))
-            .endTime(null)
-            .expiryTime(null)
-            .tasks(Sets.<Task>newLinkedHashSet())
-            .description(description)
-            .name(name)
-            .id("urn:vcloud:" + taskId)
-            .href(URI.create(endpoint + "/task/" + taskId))
-            .links(Sets.<Link>newLinkedHashSet())
-            .build();
-
-      return task;
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/775b89fd/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVAppApiLiveTest.java
----------------------------------------------------------------------
diff --git a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVAppApiLiveTest.java b/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVAppApiLiveTest.java
deleted file mode 100644
index 438684b..0000000
--- a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVAppApiLiveTest.java
+++ /dev/null
@@ -1,109 +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.vcloud.director.v1_5.features.systemadmin;
-
-import static org.jclouds.vcloud.director.v1_5.VCloudDirectorLiveTestConstants.CONDITION_FMT;
-import static org.testng.Assert.assertFalse;
-import static org.testng.Assert.assertTrue;
-
-import java.util.concurrent.TimeUnit;
-
-import org.jclouds.vcloud.director.v1_5.AbstractVAppApiLiveTest;
-import org.jclouds.vcloud.director.v1_5.domain.Task;
-import org.jclouds.vcloud.director.v1_5.domain.VApp;
-import org.jclouds.vcloud.director.v1_5.domain.params.DeployVAppParams;
-import org.testng.annotations.AfterClass;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-@Test(singleThreaded = true, testName = "SystemAdminVAppApiLiveTest")
-public class SystemAdminVAppApiLiveTest extends AbstractVAppApiLiveTest {
-
-   private boolean testUserCreated = false;
-
-   @BeforeClass(alwaysRun = true)
-   protected void setupRequiredEntities() {
-
-      if (adminContext != null) {
-         userId = adminContext.getApi().getUserApi().addUserToOrg(randomTestUser("VAppAccessTest"), org.getHref())
-                  .getId();
-      }
-   }
-
-   @AfterClass(alwaysRun = true, dependsOnMethods = { "cleanUpEnvironment" })
-   public void cleanUp() {
-      if (adminContext != null && testUserCreated && userId != null) {
-         try {
-            adminContext.getApi().getUserApi().remove(context.resolveIdToHref(userId));
-         } catch (Exception e) {
-            logger.warn(e, "Error when deleting user");
-         }
-      }
-   }
-
-   @Test(description = "POST /vApp/{id}/action/enterMaintenanceMode", groups = { "systemAdmin" })
-   public void testEnterMaintenanceMode() {
-
-      // Do this to a new vApp, so don't mess up subsequent tests by making the vApp read-only
-      VApp temp = instantiateVApp();
-      DeployVAppParams params = DeployVAppParams.builder()
-               .deploymentLeaseSeconds((int) TimeUnit.SECONDS.convert(1L, TimeUnit.HOURS)).notForceCustomization()
-               .notPowerOn().build();
-      Task deployVApp = vAppApi.deploy(temp.getHref(), params);
-      assertTaskSucceedsLong(deployVApp);
-
-      try {
-         // Method under test
-         vAppApi.enterMaintenanceMode(temp.getHref());
-
-         temp = vAppApi.get(temp.getHref());
-         assertTrue(temp.isInMaintenanceMode(),
-                  String.format(CONDITION_FMT, "InMaintenanceMode", "TRUE", temp.isInMaintenanceMode()));
-
-         // Exit maintenance mode
-         vAppApi.exitMaintenanceMode(temp.getHref());
-      } finally {
-         cleanUpVApp(temp);
-      }
-   }
-
-   @Test(description = "POST /vApp/{id}/action/exitMaintenanceMode", dependsOnMethods = { "testEnterMaintenanceMode" }, groups = { "systemAdmin" })
-   public void testExitMaintenanceMode() {
-      // Do this to a new vApp, so don't mess up subsequent tests by making the vApp read-only
-      VApp temp = instantiateVApp();
-      DeployVAppParams params = DeployVAppParams.builder()
-               .deploymentLeaseSeconds((int) TimeUnit.SECONDS.convert(1L, TimeUnit.HOURS)).notForceCustomization()
-               .notPowerOn().build();
-      Task deployVApp = vAppApi.deploy(temp.getHref(), params);
-      assertTaskSucceedsLong(deployVApp);
-
-      try {
-         // Enter maintenance mode
-         vAppApi.enterMaintenanceMode(temp.getHref());
-
-         // Method under test
-         vAppApi.exitMaintenanceMode(temp.getHref());
-
-         temp = vAppApi.get(temp.getHref());
-         assertFalse(temp.isInMaintenanceMode(),
-                  String.format(CONDITION_FMT, "InMaintenanceMode", "FALSE", temp.isInMaintenanceMode()));
-      } finally {
-         cleanUpVApp(temp);
-      }
-   }
-
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/775b89fd/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVmApiExpectTest.java
----------------------------------------------------------------------
diff --git a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVmApiExpectTest.java b/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVmApiExpectTest.java
deleted file mode 100644
index befa61f..0000000
--- a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVmApiExpectTest.java
+++ /dev/null
@@ -1,515 +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.vcloud.director.v1_5.features.systemadmin;
-
-import static org.testng.Assert.assertEquals;
-
-import java.net.URI;
-
-import org.jclouds.dmtf.ovf.NetworkSection;
-import org.jclouds.dmtf.ovf.StartupSection;
-import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType;
-import org.jclouds.vcloud.director.v1_5.domain.Error;
-import org.jclouds.vcloud.director.v1_5.domain.Link;
-import org.jclouds.vcloud.director.v1_5.domain.Owner;
-import org.jclouds.vcloud.director.v1_5.domain.ProductSectionList;
-import org.jclouds.vcloud.director.v1_5.domain.RasdItemsList;
-import org.jclouds.vcloud.director.v1_5.domain.Reference;
-import org.jclouds.vcloud.director.v1_5.domain.ScreenTicket;
-import org.jclouds.vcloud.director.v1_5.domain.Task;
-import org.jclouds.vcloud.director.v1_5.domain.Vm;
-import org.jclouds.vcloud.director.v1_5.domain.VmPendingQuestion;
-import org.jclouds.vcloud.director.v1_5.domain.VmQuestionAnswer;
-import org.jclouds.vcloud.director.v1_5.domain.dmtf.RasdItem;
-import org.jclouds.vcloud.director.v1_5.domain.params.ControlAccessParams;
-import org.jclouds.vcloud.director.v1_5.domain.params.RelocateParams;
-import org.jclouds.vcloud.director.v1_5.domain.section.GuestCustomizationSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.LeaseSettingsSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.NetworkConfigSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.NetworkConnectionSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.OperatingSystemSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.RuntimeInfoSection;
-import org.jclouds.vcloud.director.v1_5.domain.section.VirtualHardwareSection;
-import org.jclouds.vcloud.director.v1_5.internal.VCloudDirectorAdminApiExpectTest;
-import org.jclouds.vcloud.director.v1_5.user.VCloudDirectorApi;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.Sets;
-
-@Test(groups = { "unit", "systemAdmin" }, singleThreaded = true, testName = "SystemAdminVmApiExpectTest")
-public class SystemAdminVmApiExpectTest extends VCloudDirectorAdminApiExpectTest {
-   
-   private String vmId = "vm-d0e2b6b9-4381-4ddc-9572-cdfae54059be";
-   private URI vmURI = URI.create(endpoint + vmId);
-   
-   @BeforeClass
-   public void before() {
-   }
-   
-   @Test(enabled = false)
-   public void testRelocate() {
-      VCloudDirectorApi api = requestsSendResponses(loginRequest, sessionResponse, 
-         new VcloudHttpRequestPrimer()
-            .apiCommand("POST", vmId + "/action/relocate")
-            .xmlFilePayload("/vApp/relocateParams.xml", VCloudDirectorMediaType.RELOCATE_VM_PARAMS)
-            .acceptAnyMedia()
-            .httpRequestBuilder().build(), 
-         new VcloudHttpResponsePrimer()
-            .xmlFilePayload("/vApp/relocateTask.xml", VCloudDirectorMediaType.TASK)
-            .httpResponseBuilder().build());
-     
-      RelocateParams params = RelocateParams.builder()
-            .build();
-		
-		Task expected = relocateTask();
-		
-		assertEquals(api.getVmApi().relocate(vmURI, params), expected);
-   }
-   
-
-   public static Vm getVm() {
-      // FIXME Does not match XML
-      Vm vm = Vm.builder()
-            .href(URI.create("https://mycloud.greenhousedata.com/api/vApp/vm-d0e2b6b9-4381-4ddc-9572-cdfae54059be"))
-//            .link(Link.builder()
-//                     .href(URI.create())
-//                     .build())
-            .build();
-
-//      <Link rel="power:powerOn" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/power/action/powerOn"/>
-//      <Link rel="deploy" type="application/vnd.vmware.vcloud.deployVAppParams+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/action/deploy"/>
-//      <Link rel="down" type="application/vnd.vmware.vcloud.vAppNetwork+xml" name="orgNet-cloudsoft-External" href="https://mycloud.greenhousedata.com/api/network/2a2e2da4-446a-4ebc-a086-06df7c9570f0"/>
-//      <Link rel="down" type="application/vnd.vmware.vcloud.controlAccess+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/controlAccess/"/>
-//      <Link rel="controlAccess" type="application/vnd.vmware.vcloud.controlAccess+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/action/controlAccess"/>
-//      <Link rel="recompose" type="application/vnd.vmware.vcloud.recomposeVAppParams+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/action/recomposeVApp"/>
-//      <Link rel="up" type="application/vnd.vmware.vcloud.vdc+xml" href="https://mycloud.greenhousedata.com/api/vdc/e9cd3387-ac57-4d27-a481-9bee75e0690f"/>
-//      <Link rel="edit" type="application/vnd.vmware.vcloud.vApp+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be"/>
-//      <Link rel="remove" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be"/>
-//      <Link rel="down" type="application/vnd.vmware.vcloud.owner+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/owner"/>
-//      <Link rel="down" type="application/vnd.vmware.vcloud.metadata+xml" href="https://mycloud.greenhousedata.com/api/vApp/vapp-d0e2b6b9-4381-4ddc-9572-cdfae54059be/metadata"/>
-      
-      return vm;
-   }
-
-   public static Task editVmTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task removeVmTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task consolidateVmTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static ControlAccessParams controlAccessParams() {
-      ControlAccessParams params = ControlAccessParams.builder()
-            .build();
-
-      return params;
-   }
-
-   public static Task deployTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task discardSuspendedStateTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task installVMwareToolsTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task recomposeVmTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task relocateTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task undeployTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task upgradeHardwareVersionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task powerOffTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task powerOnTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task rebootTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task resetTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task shutdownTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task suspendTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static ControlAccessParams getAccessControlParams() {
-      ControlAccessParams params = ControlAccessParams.builder()
-            .build();
-
-      return params;
-   }
-
-   public static GuestCustomizationSection getGuestCustomizationSection() {
-      GuestCustomizationSection section = GuestCustomizationSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editGuestCustomizationSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static LeaseSettingsSection getLeaseSettingsSection() {
-      LeaseSettingsSection section = LeaseSettingsSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editLeaseSettingsSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task ejectMediaTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Task insertMediaTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static NetworkConfigSection getNetworkConfigSection() {
-      NetworkConfigSection section = NetworkConfigSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editNetworkConfigSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static NetworkConnectionSection getNetworkConnectionSection() {
-      NetworkConnectionSection section = NetworkConnectionSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editNetworkConnectionSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static NetworkSection getNetworkSection() {
-      NetworkSection section = NetworkSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static OperatingSystemSection getOperatingSystemSection() {
-      OperatingSystemSection section = OperatingSystemSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editOperatingSystemSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static Owner getOwner() {
-      Owner owner = Owner.builder()
-            .build();
-
-      return owner;
-   }
-
-   public static Task editOwnerTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static ProductSectionList getProductSections() {
-      ProductSectionList sectionItems = ProductSectionList.builder()
-            .build();
-
-      return sectionItems;
-   }
-
-   public static Task editProductSectionsTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static VmPendingQuestion getPendingQuestion() {
-      VmPendingQuestion question = VmPendingQuestion.builder()
-            .build();
-
-      return question;
-   }
-
-   public static VmQuestionAnswer answerQuestion() {
-      VmQuestionAnswer answer = null; // = VmQuestionAnswer.builder() 
-//            .build();
-
-      return answer;
-   }
-
-   public static RuntimeInfoSection getRuntimeInfoSection() {
-      RuntimeInfoSection section = RuntimeInfoSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static byte[] getScreenImage() {
-      byte[] image = new byte[0];
-
-      return image;
-   }
-
-   public static ScreenTicket getScreenTicket() {
-      ScreenTicket ticket = null; // = ScreenTicket.builder();
-//            .build();
-
-      return ticket;
-   }
-
-   public static StartupSection getStartupSection() {
-      StartupSection section = null; // = StartupSection.builder();
-//            .build();
-
-      return section;
-   }
-
-   public static Task editStartupSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static VirtualHardwareSection getVirtualHardwareSection() {
-      VirtualHardwareSection section = VirtualHardwareSection.builder()
-            .build();
-
-      return section;
-   }
-
-   public static Task editVirtualHardwareSectionTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static RasdItem getVirtualHardwareSectionCpu() {
-      RasdItem cpu = RasdItem.builder()
-            .build();
-
-      return cpu;
-   }
-
-   public static Task editVirtualHardwareSectionCpuTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static RasdItemsList getVirtualHardwareSectionDisks() {
-      RasdItemsList disks = RasdItemsList.builder()
-            .build();
-
-      return disks;
-   }
-
-   public static Task editVirtualHardwareSectionDisksTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static RasdItemsList getVirtualHardwareSectionMedia() {
-      RasdItemsList media = RasdItemsList.builder()
-            .build();
-
-      return media;
-   }
-
-   public static RasdItem getVirtualHardwareSectionMemory() {
-      RasdItem memory = RasdItem.builder()
-            .build();
-
-      return memory;
-   }
-
-   public static Task editVirtualHardwareSectionMemoryTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static RasdItemsList getVirtualHardwareSectionNetworkCards() {
-      RasdItemsList networkCards = RasdItemsList.builder()
-            .build();
-
-      return networkCards;
-   }
-
-   public static Task editVirtualHardwareSectionNetworkCardsTask() {
-      Task task = Task.builder()
-            .build();
-
-      return task;
-   }
-
-   public static RasdItemsList getVirtualHardwareSectionSerialPorts() {
-      RasdItemsList serialPorts = RasdItemsList.builder()
-            .build();
-
-      return serialPorts;
-   }
-
-   public static Task editVirtualHardwareSectionSerialPortsTask() {
-      return task("id", "name", "description", "status", "operation", "operationName", "startTime");
-   }
-
-   /** Used by other methods to add a custom {@link Task} object. */
-   private static Task task(String taskId, String name, String description, String status, String operation, String operationName, String startTime) {
-      Task task = Task.builder()
-            .error(Error.builder().build())
-            .org(Reference.builder().build())
-            .owner(Reference.builder().build())
-            .user(Reference.builder().build())
-            .params(null)
-            .progress(0)
-            .status(status)
-            .operation(operation)
-            .operationName(operationName)
-            .startTime(dateService.iso8601DateParse(startTime))
-            .endTime(null)
-            .expiryTime(null)
-            .tasks(Sets.<Task>newLinkedHashSet())
-            .description(description)
-            .name(name)
-            .id("urn:vcloud:" + taskId)
-            .href(URI.create(endpoint + "/task/" + taskId))
-            .links(Sets.<Link>newLinkedHashSet())
-            .build();
-
-      return task;
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/775b89fd/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVmApiLiveTest.java
----------------------------------------------------------------------
diff --git a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVmApiLiveTest.java b/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVmApiLiveTest.java
deleted file mode 100644
index 8cbc652..0000000
--- a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/systemadmin/SystemAdminVmApiLiveTest.java
+++ /dev/null
@@ -1,125 +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.vcloud.director.v1_5.features.systemadmin;
-
-import static org.jclouds.vcloud.director.v1_5.VCloudDirectorLiveTestConstants.OBJ_FIELD_EQ;
-import static org.jclouds.vcloud.director.v1_5.VCloudDirectorLiveTestConstants.TASK_COMPLETE_TIMELY;
-import static org.jclouds.vcloud.director.v1_5.domain.Checks.checkVm;
-import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertTrue;
-
-import java.util.concurrent.TimeUnit;
-
-import org.jclouds.vcloud.director.v1_5.AbstractVAppApiLiveTest;
-import org.jclouds.vcloud.director.v1_5.domain.Reference;
-import org.jclouds.vcloud.director.v1_5.domain.ResourceEntity.Status;
-import org.jclouds.vcloud.director.v1_5.domain.Task;
-import org.jclouds.vcloud.director.v1_5.domain.params.DeployVAppParams;
-import org.jclouds.vcloud.director.v1_5.domain.params.RelocateParams;
-import org.jclouds.vcloud.director.v1_5.domain.query.QueryResultRecord;
-import org.jclouds.vcloud.director.v1_5.domain.query.QueryResultRecords;
-import org.testng.annotations.AfterClass;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.Iterables;
-
-@Test(groups = { "live", "systemAdmin" }, singleThreaded = true, testName = "SystemAdminVmApiLiveTest")
-public class SystemAdminVmApiLiveTest extends AbstractVAppApiLiveTest {
-
-   private boolean testUserCreated = false;
-
-   @BeforeClass(alwaysRun = true)
-   protected void setupRequiredEntities() {
-
-      if (adminContext != null) {
-         userId = adminContext.getApi().getUserApi().addUserToOrg(randomTestUser("VAppAccessTest"), org.getHref())
-                  .getId();
-      }
-   }
-
-   @AfterClass(alwaysRun = true, dependsOnMethods = { "cleanUpEnvironment" })
-   public void cleanUp() {
-      if (adminContext != null && testUserCreated && userId != null) {
-         try {
-            adminContext.getApi().getUserApi().remove(context.resolveIdToHref(userId));
-         } catch (Exception e) {
-            logger.warn("Error when deleting user: %s", e.getMessage());
-         }
-      }
-   }
-
-   @Test(description = "GET /vApp/{id}")
-   public void testGetVm() {
-      // The method under test
-      vm = vmApi.get(context.resolveIdToHref(vmId));
-
-      // Check the retrieved object is well formed
-      checkVm(vm);
-
-      // Check the required fields are set
-      assertEquals(vm.isDeployed(), Boolean.FALSE,
-               String.format(OBJ_FIELD_EQ, VM, "deployed", "FALSE", vm.isDeployed().toString()));
-
-      // Check status
-      assertVmStatus(vm.getHref(), Status.POWERED_OFF);
-   }
-   
-   // NOTE This test is disabled, as it is not possible to look up datastores using the User API
-   @Test(description = "POST /vApp/{id}/action/relocate", dependsOnMethods = { "testGetVm" })
-   public void testRelocate() {
-      // Relocate to the last of the available datastores
-      QueryResultRecords records = adminContext.getApi().getQueryApi().queryAll("datastore");
-      QueryResultRecord datastore = Iterables.getLast(records.getRecords());
-      RelocateParams params = RelocateParams.builder().datastore(Reference.builder().href(datastore.getHref()).build())
-               .build();
-
-      // The method under test
-      Task relocate = vmApi.relocate(vm.getHref(), params);
-      assertTrue(retryTaskSuccess.apply(relocate), String.format(TASK_COMPLETE_TIMELY, "relocate"));
-   }
-   
-   @Test(description = "POST /vApp/{id}/action/deploy", dependsOnMethods = { "testGetVm" })
-   public void testDeployVm() {
-      DeployVAppParams params = DeployVAppParams.builder()
-               .deploymentLeaseSeconds((int) TimeUnit.SECONDS.convert(1L, TimeUnit.HOURS)).notForceCustomization()
-               .notPowerOn().build();
-
-      // The method under test
-      Task deployVm = vmApi.deploy(vm.getHref(), params);
-      assertTrue(retryTaskSuccessLong.apply(deployVm), String.format(TASK_COMPLETE_TIMELY, "deployVm"));
-
-      // Get the edited Vm
-      vm = vmApi.get(vm.getHref());
-
-      // Check the required fields are set
-      assertTrue(vm.isDeployed(), String.format(OBJ_FIELD_EQ, VM, "deployed", "TRUE", vm.isDeployed().toString()));
-
-      // Check status
-      assertVmStatus(vm.getHref(), Status.POWERED_OFF);
-   }   
-   
-   @Test(description = "POST /vApp/{id}/action/consolidate", dependsOnMethods = { "testDeployVm" })
-   public void testConsolidateVm() {
-      // Power on Vm
-      vm = powerOnVm(vm.getHref());
-
-      // The method under test
-      Task consolidateVm = vmApi.consolidate(vm.getHref());
-      assertTrue(retryTaskSuccess.apply(consolidateVm), String.format(TASK_COMPLETE_TIMELY, "consolidateVm"));
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/775b89fd/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/handlers/InvalidateSessionAndRetryOn401AndLogoutOnCloseTest.java
----------------------------------------------------------------------
diff --git a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/handlers/InvalidateSessionAndRetryOn401AndLogoutOnCloseTest.java b/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/handlers/InvalidateSessionAndRetryOn401AndLogoutOnCloseTest.java
deleted file mode 100644
index 890c150..0000000
--- a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/handlers/InvalidateSessionAndRetryOn401AndLogoutOnCloseTest.java
+++ /dev/null
@@ -1,85 +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.vcloud.director.v1_5.handlers;
-
-import static org.easymock.EasyMock.createMock;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.expectLastCall;
-import static org.easymock.EasyMock.replay;
-import static org.easymock.EasyMock.verify;
-import static org.testng.Assert.assertFalse;
-import static org.testng.Assert.assertTrue;
-
-import org.jclouds.domain.Credentials;
-import org.jclouds.http.HttpCommand;
-import org.jclouds.http.HttpResponse;
-import org.jclouds.vcloud.director.v1_5.domain.SessionWithToken;
-import org.jclouds.vcloud.director.v1_5.login.SessionApi;
-import org.testng.annotations.Test;
-
-import com.google.common.cache.LoadingCache;
-
-/**
- * Tests behavior of {@code InvalidateSessionAndRetryOn401AndLogoutOnClose} handler
- */
-@Test(groups = "unit", testName = "InvalidateSessionAndRetryOn401AndLogoutOnCloseTest")
-public class InvalidateSessionAndRetryOn401AndLogoutOnCloseTest {
-   @SuppressWarnings("unchecked")
-   @Test
-   public void test401ShouldInvalidateSessionAndRetry() {
-      HttpCommand command = createMock(HttpCommand.class);
-      SessionApi sessionApi = createMock(SessionApi.class);
-      LoadingCache<Credentials, SessionWithToken> cache = createMock(LoadingCache.class);
-
-      cache.invalidateAll();
-      expectLastCall();
-      expect(command.incrementFailureCount()).andReturn(1);
-      expect(command.isReplayable()).andReturn(true);
-      expect(command.getFailureCount()).andReturn(1).atLeastOnce();
-
-      replay(cache, command);
-
-      HttpResponse response = HttpResponse.builder().statusCode(401).build();
-
-      InvalidateSessionAndRetryOn401AndLogoutOnClose retry = new InvalidateSessionAndRetryOn401AndLogoutOnClose(cache,
-               sessionApi);
-
-      assertTrue(retry.shouldRetryRequest(command, response));
-
-      verify(cache, command);
-   }
-
-   @SuppressWarnings("unchecked")
-   @Test
-   public void test403ShouldNotInvalidateSessionOrRetry() {
-      HttpCommand command = createMock(HttpCommand.class);
-      SessionApi sessionApi = createMock(SessionApi.class);
-      LoadingCache<Credentials, SessionWithToken> cache = createMock(LoadingCache.class);
-
-      replay(cache, command);
-
-      HttpResponse response = HttpResponse.builder().statusCode(403).build();
-
-      InvalidateSessionAndRetryOn401AndLogoutOnClose retry = new InvalidateSessionAndRetryOn401AndLogoutOnClose(cache,
-               sessionApi);
-
-      assertFalse(retry.shouldRetryRequest(command, response));
-
-      verify(cache, command);
-   }
-
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/775b89fd/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/handlers/VCloudDirectorErrorHandlerTest.java
----------------------------------------------------------------------
diff --git a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/handlers/VCloudDirectorErrorHandlerTest.java b/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/handlers/VCloudDirectorErrorHandlerTest.java
deleted file mode 100644
index 208e146..0000000
--- a/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/handlers/VCloudDirectorErrorHandlerTest.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.vcloud.director.v1_5.handlers;
-
-import static org.easymock.EasyMock.createMock;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.replay;
-import static org.easymock.EasyMock.reportMatcher;
-import static org.easymock.EasyMock.verify;
-
-import java.net.URI;
-
-import org.easymock.IArgumentMatcher;
-import org.jclouds.http.HttpCommand;
-import org.jclouds.http.HttpRequest;
-import org.jclouds.http.HttpResponse;
-import org.jclouds.rest.AuthorizationException;
-import org.jclouds.rest.ResourceNotFoundException;
-import org.testng.annotations.Test;
-
-import com.google.inject.Guice;
-
-@Test(groups = { "unit" })
-public class VCloudDirectorErrorHandlerTest {
-
-   @Test
-   public void test401MakesAuthorizationException() {
-      assertCodeMakes("GET", URI.create("https://api.vcloud.director.com/foo"), 401, "", "Unauthorized",
-            AuthorizationException.class);
-   }
-
-   @Test
-   public void test404MakesResourceNotFoundException() {
-      assertCodeMakes("GET", URI.create("https://api.vcloud.director.com/foo"), 404, "", "Not Found",
-            ResourceNotFoundException.class);
-   }
-
-   private void assertCodeMakes(String method, URI uri, int statusCode, String message, String content,
-         Class<? extends Exception> expected) {
-      assertCodeMakes(method, uri, statusCode, message, "text/xml", content, expected);
-   }
-
-   private void assertCodeMakes(String method, URI uri, int statusCode, String message, String contentType,
-         String content, Class<? extends Exception> expected) {
-
-      VCloudDirectorErrorHandler function = Guice.createInjector().getInstance(VCloudDirectorErrorHandler.class);
-
-      HttpCommand command = createMock(HttpCommand.class);
-      HttpRequest request = HttpRequest.builder().method(method).endpoint(uri).build();
-      HttpResponse response = HttpResponse.builder().statusCode(statusCode).message(message).payload(content).build();
-      response.getPayload().getContentMetadata().setContentType(contentType);
-
-      expect(command.getCurrentRequest()).andReturn(request).atLeastOnce();
-      command.setException(classEq(expected));
-
-      replay(command);
-
-      function.handleError(command, response);
-
-      verify(command);
-   }
-
-   public static Exception classEq(final Class<? extends Exception> in) {
-      reportMatcher(new IArgumentMatcher() {
-
-         @Override
-         public void appendTo(StringBuffer buffer) {
-            buffer.append("classEq(");
-            buffer.append(in);
-            buffer.append(")");
-         }
-
-         @Override
-         public boolean matches(Object arg) {
-            return arg.getClass() == in;
-         }
-
-      });
-      return null;
-   }
-
-}