http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1b689dc1/abiquo/src/test/java/org/jclouds/abiquo/features/InfrastructureApiTest.java ---------------------------------------------------------------------- diff --git a/abiquo/src/test/java/org/jclouds/abiquo/features/InfrastructureApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/features/InfrastructureApiTest.java deleted file mode 100644 index fa8a3e8..0000000 --- a/abiquo/src/test/java/org/jclouds/abiquo/features/InfrastructureApiTest.java +++ /dev/null @@ -1,1277 +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.abiquo.features; - -import static org.jclouds.abiquo.domain.DomainUtils.withHeader; -import static org.jclouds.reflect.Reflection2.method; - -import java.io.IOException; - -import javax.ws.rs.core.MediaType; - -import org.jclouds.Fallbacks.NullOnNotFoundOr404; -import org.jclouds.abiquo.AbiquoFallbacks.FalseIfNotAvailable; -import org.jclouds.abiquo.AbiquoFallbacks.PropagateAbiquoExceptionOnNotFoundOr4xx; -import org.jclouds.abiquo.domain.EnterpriseResources; -import org.jclouds.abiquo.domain.InfrastructureResources; -import org.jclouds.abiquo.domain.NetworkResources; -import org.jclouds.abiquo.domain.infrastructure.options.DatacenterOptions; -import org.jclouds.abiquo.domain.infrastructure.options.IpmiOptions; -import org.jclouds.abiquo.domain.infrastructure.options.MachineOptions; -import org.jclouds.abiquo.domain.infrastructure.options.StoragePoolOptions; -import org.jclouds.abiquo.domain.network.options.NetworkOptions; -import org.jclouds.fallbacks.MapHttp4xxCodesToExceptions; -import org.jclouds.http.functions.ParseXMLWithJAXB; -import org.jclouds.http.functions.ReleasePayloadAndReturn; -import org.jclouds.http.functions.ReturnStringIf2xx; -import org.jclouds.http.functions.ReturnTrueIf2xx; -import org.jclouds.reflect.Invocation; -import org.jclouds.rest.internal.GeneratedHttpRequest; -import org.testng.annotations.Test; - -import com.abiquo.model.enumerator.HypervisorType; -import com.abiquo.model.enumerator.NetworkType; -import com.abiquo.model.enumerator.RemoteServiceType; -import com.abiquo.server.core.cloud.HypervisorTypesDto; -import com.abiquo.server.core.cloud.VirtualMachineWithNodeExtendedDto; -import com.abiquo.server.core.cloud.VirtualMachinesWithNodeExtendedDto; -import com.abiquo.server.core.enterprise.DatacentersLimitsDto; -import com.abiquo.server.core.enterprise.EnterpriseDto; -import com.abiquo.server.core.infrastructure.DatacenterDto; -import com.abiquo.server.core.infrastructure.DatacentersDto; -import com.abiquo.server.core.infrastructure.MachineDto; -import com.abiquo.server.core.infrastructure.MachineIpmiStateDto; -import com.abiquo.server.core.infrastructure.MachineStateDto; -import com.abiquo.server.core.infrastructure.MachinesDto; -import com.abiquo.server.core.infrastructure.RackDto; -import com.abiquo.server.core.infrastructure.RacksDto; -import com.abiquo.server.core.infrastructure.RemoteServiceDto; -import com.abiquo.server.core.infrastructure.RemoteServicesDto; -import com.abiquo.server.core.infrastructure.network.ExternalIpDto; -import com.abiquo.server.core.infrastructure.network.PublicIpDto; -import com.abiquo.server.core.infrastructure.network.UnmanagedIpDto; -import com.abiquo.server.core.infrastructure.network.VLANNetworkDto; -import com.abiquo.server.core.infrastructure.network.VLANNetworksDto; -import com.abiquo.server.core.infrastructure.network.VlanTagAvailabilityDto; -import com.abiquo.server.core.infrastructure.storage.StorageDeviceDto; -import com.abiquo.server.core.infrastructure.storage.StorageDevicesDto; -import com.abiquo.server.core.infrastructure.storage.StorageDevicesMetadataDto; -import com.abiquo.server.core.infrastructure.storage.StoragePoolDto; -import com.abiquo.server.core.infrastructure.storage.StoragePoolsDto; -import com.abiquo.server.core.infrastructure.storage.TierDto; -import com.abiquo.server.core.infrastructure.storage.TiersDto; -import com.google.common.collect.ImmutableList; -import com.google.common.reflect.Invokable; - -/** - * Tests annotation parsing of {@code InfrastructureApi} - */ -@Test(groups = "unit", testName = "InfrastructureApiTest") -public class InfrastructureApiTest extends BaseAbiquoApiTest<InfrastructureApi> { - /*********************** Datacenter ***********************/ - - public void testListDatacenters() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listDatacenters"); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.of())); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + DatacentersDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testCreateDatacenter() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "createDatacenter", DatacenterDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPost()))); - - assertRequestLineEquals(request, "POST http://localhost/api/admin/datacenters HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + DatacenterDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.datacenterPostPayload()), DatacenterDto.class, - DatacenterDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetDatacenter() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getDatacenter", Integer.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of(1))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + DatacenterDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, NullOnNotFoundOr404.class); - - checkFilters(request); - } - - public void testUpdateDatacenter() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "updateDatacenter", DatacenterDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut()))); - - assertRequestLineEquals(request, "PUT http://localhost/api/admin/datacenters/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + DatacenterDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.datacenterPutPayload()), DatacenterDto.class, - DatacenterDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testDeleteDatacenter() throws SecurityException, NoSuchMethodException { - Invokable<?, ?> method = method(InfrastructureApi.class, "deleteDatacenter", DatacenterDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut()))); - - assertRequestLineEquals(request, "DELETE http://localhost/api/admin/datacenters/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, ""); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testListLimitsDatacenter() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listLimits", DatacenterDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut()))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/action/getLimits HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + DatacentersLimitsDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - /*********************** Hypervisor ***********************/ - - public void testGetHypervisorTypeFromMachine() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getHypervisorTypeFromMachine", DatacenterDto.class, - DatacenterOptions.class); - GeneratedHttpRequest request = processor.apply(Invocation.create( - method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), - DatacenterOptions.builder().ip("10.60.1.120").build()))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/datacenters/1/action/hypervisor?ip=10.60.1.120 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + MediaType.TEXT_PLAIN + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ReturnStringIf2xx.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetHypervisorTypesFromDatacenter() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getHypervisorTypes", DatacenterDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut()))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/hypervisors HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + HypervisorTypesDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - /*********************** Managed Rack ***********************/ - - public void testListRacks() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listRacks", DatacenterDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut()))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/racks HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + RacksDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testCreateRack() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "createRack", DatacenterDto.class, RackDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), InfrastructureResources.rackPost()))); - - assertRequestLineEquals(request, "POST http://localhost/api/admin/datacenters/1/racks HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + RackDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.rackPostPayload()), RackDto.class, - RackDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetRack() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getRack", DatacenterDto.class, Integer.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), 1))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/racks/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + RackDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, NullOnNotFoundOr404.class); - - checkFilters(request); - } - - public void testUpdateRack() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "updateRack", RackDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.rackPut()))); - - assertRequestLineEquals(request, "PUT http://localhost/api/admin/datacenters/1/racks/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + RackDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.rackPutPayload()), RackDto.class, - RackDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testDeleteRack() throws SecurityException, NoSuchMethodException { - Invokable<?, ?> method = method(InfrastructureApi.class, "deleteRack", RackDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.rackPut()))); - - assertRequestLineEquals(request, "DELETE http://localhost/api/admin/datacenters/1/racks/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, ""); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - /*********************** Remote Service **********************/ - - public void testListRemoteServices() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listRemoteServices", DatacenterDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut()))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/remoteservices HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + RemoteServicesDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testCreateRemoteService() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "createRemoteService", DatacenterDto.class, - RemoteServiceDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create( - method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), - InfrastructureResources.remoteServicePost()))); - - assertRequestLineEquals(request, "POST http://localhost/api/admin/datacenters/1/remoteservices HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + RemoteServiceDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.remoteServicePostPayload()), - RemoteServiceDto.class, RemoteServiceDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetRemoteService() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getRemoteService", DatacenterDto.class, - RemoteServiceType.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of( - InfrastructureResources.datacenterPut(), RemoteServiceType.STORAGE_SYSTEM_MONITOR))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/datacenters/1/remoteservices/storagesystemmonitor HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + RemoteServiceDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, NullOnNotFoundOr404.class); - - checkFilters(request); - } - - public void testUpdateRemoteService() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "updateRemoteService", RemoteServiceDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.remoteServicePut()))); - - assertRequestLineEquals(request, - "PUT http://localhost/api/admin/datacenters/1/remoteservices/nodecollector HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + RemoteServiceDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.remoteServicePutPayload()), - RemoteServiceDto.class, RemoteServiceDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testDeleteRemoteService() throws SecurityException, NoSuchMethodException { - Invokable<?, ?> method = method(InfrastructureApi.class, "deleteRemoteService", RemoteServiceDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.remoteServicePut()))); - - assertRequestLineEquals(request, - "DELETE http://localhost/api/admin/datacenters/1/remoteservices/nodecollector HTTP/1.1"); - assertNonPayloadHeadersEqual(request, ""); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testIsAvailableRemoteService() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "isAvailable", RemoteServiceDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.remoteServicePut()))); - - String checkUri = InfrastructureResources.remoteServicePut().searchLink("check").getHref(); - assertRequestLineEquals(request, String.format("GET %s HTTP/1.1", checkUri)); - assertNonPayloadHeadersEqual(request, ""); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ReturnTrueIf2xx.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, FalseIfNotAvailable.class); - - checkFilters(request); - } - - /*********************** Machine ***********************/ - - public void testDiscoverSingleMachineWithoutOptions() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "discoverSingleMachine", DatacenterDto.class, - String.class, HypervisorType.class, String.class, String.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of( - InfrastructureResources.datacenterPut(), "10.60.1.222", HypervisorType.XENSERVER, "user", "pass"))); - - String baseUrl = "http://localhost/api/admin/datacenters/1/action/discoversingle"; - String query = "ip=10.60.1.222&hypervisor=XENSERVER&user=user&password=pass"; - String expectedRequest = String.format("GET %s?%s HTTP/1.1", baseUrl, query); - - assertRequestLineEquals(request, expectedRequest); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, PropagateAbiquoExceptionOnNotFoundOr4xx.class); - - checkFilters(request); - } - - public void testDiscoverSingleMachineAllParams() throws SecurityException, NoSuchMethodException { - Invokable<?, ?> method = method(InfrastructureApi.class, "discoverSingleMachine", DatacenterDto.class, - String.class, HypervisorType.class, String.class, String.class, MachineOptions.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of( - InfrastructureResources.datacenterPut(), "80.80.80.80", HypervisorType.KVM, "user", "pass", MachineOptions - .builder().port(8889).build()))); - - String baseUrl = "http://localhost/api/admin/datacenters/1/action/discoversingle"; - String query = "ip=80.80.80.80&hypervisor=KVM&user=user&password=pass&port=8889"; - String expectedRequest = String.format("GET %s?%s HTTP/1.1", baseUrl, query); - - assertRequestLineEquals(request, expectedRequest); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, PropagateAbiquoExceptionOnNotFoundOr4xx.class); - - checkFilters(request); - } - - public void testDiscoverSingleMachineDefaultValues() throws SecurityException, NoSuchMethodException { - Invokable<?, ?> method = method(InfrastructureApi.class, "discoverSingleMachine", DatacenterDto.class, - String.class, HypervisorType.class, String.class, String.class, MachineOptions.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of( - InfrastructureResources.datacenterPut(), "80.80.80.80", HypervisorType.KVM, "user", "pass", MachineOptions - .builder().build()))); - - String baseUrl = "http://localhost/api/admin/datacenters/1/action/discoversingle"; - String query = "ip=80.80.80.80&hypervisor=KVM&user=user&password=pass"; - String expectedRequest = String.format("GET %s?%s HTTP/1.1", baseUrl, query); - - assertRequestLineEquals(request, expectedRequest); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, PropagateAbiquoExceptionOnNotFoundOr4xx.class); - - checkFilters(request); - } - - public void testDiscoverMultipleMachinesWithoutOptions() throws SecurityException, NoSuchMethodException, - IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "discoverMultipleMachines", DatacenterDto.class, - String.class, String.class, HypervisorType.class, String.class, String.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of( - InfrastructureResources.datacenterPut(), "10.60.1.222", "10.60.1.250", HypervisorType.XENSERVER, "user", - "pass"))); - - String baseUrl = "http://localhost/api/admin/datacenters/1/action/discovermultiple"; - String query = "ipFrom=10.60.1.222&ipTo=10.60.1.250&hypervisor=XENSERVER&user=user&password=pass"; - String expectedRequest = String.format("GET %s?%s HTTP/1.1", baseUrl, query); - - assertRequestLineEquals(request, expectedRequest); - assertNonPayloadHeadersEqual(request, "Accept: " + MachinesDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, PropagateAbiquoExceptionOnNotFoundOr4xx.class); - - checkFilters(request); - } - - public void testDiscoverMultipleMachinesAllParams() throws SecurityException, NoSuchMethodException { - Invokable<?, ?> method = method(InfrastructureApi.class, "discoverMultipleMachines", DatacenterDto.class, - String.class, String.class, HypervisorType.class, String.class, String.class, MachineOptions.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of( - InfrastructureResources.datacenterPut(), "80.80.80.80", "80.80.80.86", HypervisorType.KVM, "user", "pass", - MachineOptions.builder().port(8889).build()))); - - String baseUrl = "http://localhost/api/admin/datacenters/1/action/discovermultiple"; - String query = "ipFrom=80.80.80.80&ipTo=80.80.80.86&hypervisor=KVM&user=user&password=pass&port=8889"; - String expectedRequest = String.format("GET %s?%s HTTP/1.1", baseUrl, query); - - assertRequestLineEquals(request, expectedRequest); - assertNonPayloadHeadersEqual(request, "Accept: " + MachinesDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, PropagateAbiquoExceptionOnNotFoundOr4xx.class); - - checkFilters(request); - } - - public void testCheckMachineStateWithoutOptions() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "checkMachineState", DatacenterDto.class, String.class, - HypervisorType.class, String.class, String.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of( - InfrastructureResources.datacenterPut(), "10.60.1.222", HypervisorType.XENSERVER, "user", "pass"))); - - String baseUrl = "http://localhost/api/admin/datacenters/1/action/checkmachinestate"; - String query = "ip=10.60.1.222&hypervisor=XENSERVER&user=user&password=pass"; - String expectedRequest = String.format("GET %s?%s HTTP/1.1", baseUrl, query); - - assertRequestLineEquals(request, expectedRequest); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineStateDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, PropagateAbiquoExceptionOnNotFoundOr4xx.class); - - checkFilters(request); - } - - public void testCheckMachineStateAllParams() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "checkMachineState", DatacenterDto.class, String.class, - HypervisorType.class, String.class, String.class, MachineOptions.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of( - InfrastructureResources.datacenterPut(), "10.60.1.222", HypervisorType.XENSERVER, "user", "pass", - MachineOptions.builder().port(8889).build()))); - - String baseUrl = "http://localhost/api/admin/datacenters/1/action/checkmachinestate"; - String query = "ip=10.60.1.222&hypervisor=XENSERVER&user=user&password=pass&port=8889"; - String expectedRequest = String.format("GET %s?%s HTTP/1.1", baseUrl, query); - - assertRequestLineEquals(request, expectedRequest); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineStateDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, PropagateAbiquoExceptionOnNotFoundOr4xx.class); - - checkFilters(request); - } - - public void testCheckMachineIpmiStateWithoutOptions() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "checkMachineIpmiState", DatacenterDto.class, - String.class, String.class, String.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), "10.60.1.222", "user", "pass"))); - - String baseUrl = "http://localhost/api/admin/datacenters/1/action/checkmachineipmistate"; - String query = "ip=10.60.1.222&user=user&password=pass"; - String expectedRequest = String.format("GET %s?%s HTTP/1.1", baseUrl, query); - - assertRequestLineEquals(request, expectedRequest); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineIpmiStateDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, PropagateAbiquoExceptionOnNotFoundOr4xx.class); - - checkFilters(request); - } - - public void testCheckMachineIpmiStateWithALLOptions() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "checkMachineIpmiState", DatacenterDto.class, - String.class, String.class, String.class, IpmiOptions.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of( - InfrastructureResources.datacenterPut(), "10.60.1.222", "user", "pass", IpmiOptions.builder().port(8889) - .build()))); - - String baseUrl = "http://localhost/api/admin/datacenters/1/action/checkmachineipmistate"; - String query = "ip=10.60.1.222&user=user&password=pass&port=8889"; - String expectedRequest = String.format("GET %s?%s HTTP/1.1", baseUrl, query); - - assertRequestLineEquals(request, expectedRequest); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineIpmiStateDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, PropagateAbiquoExceptionOnNotFoundOr4xx.class); - - checkFilters(request); - } - - public void testListMachines() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listMachines", RackDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.rackPut()))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/racks/1/machines HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + MachinesDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetMachine() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getMachine", RackDto.class, Integer.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.rackPut(), 1))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/racks/1/machines/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, NullOnNotFoundOr404.class); - - checkFilters(request); - } - - public void testCheckMachineState() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "checkMachineState", MachineDto.class, boolean.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.machinePut(), true))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/datacenters/1/racks/1/machines/1/action/checkstate?sync=true HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineStateDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testCheckMachineIpmiState() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "checkMachineIpmiState", MachineDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.machinePut()))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/datacenters/1/racks/1/machines/1/action/checkipmistate HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineIpmiStateDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testCreateMachine() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "createMachine", RackDto.class, MachineDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.rackPut(), InfrastructureResources.machinePost()))); - - assertRequestLineEquals(request, "POST http://localhost/api/admin/datacenters/1/racks/1/machines HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.machinePostPayload()), MachineDto.class, - MachineDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testUpdateMachine() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "updateMachine", MachineDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.machinePut()))); - - assertRequestLineEquals(request, "PUT http://localhost/api/admin/datacenters/1/racks/1/machines/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.machinePutPayload()), MachineDto.class, - MachineDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testDeleteMachine() throws SecurityException, NoSuchMethodException { - Invokable<?, ?> method = method(InfrastructureApi.class, "deleteMachine", MachineDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.machinePut()))); - - assertRequestLineEquals(request, "DELETE http://localhost/api/admin/datacenters/1/racks/1/machines/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, ""); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testReserveMachine() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "reserveMachine", EnterpriseDto.class, MachineDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(EnterpriseResources.enterprisePut(), InfrastructureResources.machinePut()))); - - assertRequestLineEquals(request, "POST http://localhost/api/admin/enterprises/1/reservedmachines HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + MachineDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.machinePutPayload()), MachineDto.class, - MachineDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testCancelReservation() throws SecurityException, NoSuchMethodException { - Invokable<?, ?> method = method(InfrastructureApi.class, "cancelReservation", EnterpriseDto.class, - MachineDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(EnterpriseResources.enterprisePut(), InfrastructureResources.machinePut()))); - - assertRequestLineEquals(request, "DELETE http://localhost/api/admin/enterprises/1/reservedmachines/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, ""); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testListVirtualMachinesByMachine() throws SecurityException, NoSuchMethodException, IOException { - MachineOptions options = MachineOptions.builder().sync(true).build(); - - Invokable<?, ?> method = method(InfrastructureApi.class, "listVirtualMachinesByMachine", MachineDto.class, - MachineOptions.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.machinePut(), options))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/datacenters/1/racks/1/machines/1/virtualmachines?sync=true HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + VirtualMachinesWithNodeExtendedDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetVirtualMachineByMachine() throws SecurityException, NoSuchMethodException, IOException { - - Invokable<?, ?> method = method(InfrastructureApi.class, "getVirtualMachine", MachineDto.class, Integer.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.machinePut(), 1))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/datacenters/1/racks/1/machines/1/virtualmachines/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + VirtualMachineWithNodeExtendedDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, NullOnNotFoundOr404.class); - - checkFilters(request); - } - - /*********************** Storage Device ***********************/ - - public void testListStorageDevices() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listStorageDevices", DatacenterDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut()))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/storage/devices HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StorageDevicesDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testListSupportedStorageDevices() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listSupportedStorageDevices", DatacenterDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut()))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/datacenters/1/storage/devices/action/supported HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StorageDevicesMetadataDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testCreateStorageDevice() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "createStorageDevice", DatacenterDto.class, - StorageDeviceDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create( - method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), - InfrastructureResources.storageDevicePost()))); - - assertRequestLineEquals(request, "POST http://localhost/api/admin/datacenters/1/storage/devices HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StorageDeviceDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.storageDevicePostPayload()), - StorageDeviceDto.class, StorageDeviceDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testDeleteStorageDevice() throws SecurityException, NoSuchMethodException { - Invokable<?, ?> method = method(InfrastructureApi.class, "deleteStorageDevice", StorageDeviceDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.storageDevicePut()))); - - assertRequestLineEquals(request, "DELETE http://localhost/api/admin/datacenters/1/storage/devices/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, ""); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testUpdateStorageDevice() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "updateStorageDevice", StorageDeviceDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.storageDevicePut()))); - - assertRequestLineEquals(request, "PUT http://localhost/api/admin/datacenters/1/storage/devices/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StorageDeviceDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.storageDevicePutPayload()), - StorageDeviceDto.class, StorageDeviceDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetStorageDevice() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getStorageDevice", DatacenterDto.class, Integer.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), 1))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/storage/devices/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StorageDeviceDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, NullOnNotFoundOr404.class); - - checkFilters(request); - } - - /*********************** Tier ***********************/ - - public void testListTiers() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listTiers", DatacenterDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut()))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/storage/tiers HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + TiersDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testUpdateTier() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "updateTier", TierDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.tierPut()))); - - assertRequestLineEquals(request, "PUT http://localhost/api/admin/datacenters/1/storage/tiers/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + TierDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.tierPutPayload()), TierDto.class, - TierDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetTier() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getTier", DatacenterDto.class, Integer.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), 1))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/storage/tiers/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + TierDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, NullOnNotFoundOr404.class); - - checkFilters(request); - } - - /*********************** StoragePool ***********************/ - - public void testListSyncStoragePools() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listStoragePools", StorageDeviceDto.class, - StoragePoolOptions.class); - GeneratedHttpRequest request = processor.apply(Invocation.create( - method, - ImmutableList.<Object> of(InfrastructureResources.storageDevicePut(), - StoragePoolOptions.builder().sync(true).build()))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/datacenters/1/storage/devices/1/pools?sync=true HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StoragePoolsDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testListStoragePoolsFromTier() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listStoragePools", TierDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create( - method, - ImmutableList.<Object> of(InfrastructureResources.tierPut(), StoragePoolOptions.builder().sync(true) - .build()))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/storage/tiers/1/pools HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StoragePoolsDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testListStoragePoolsNoParams() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listStoragePools", StorageDeviceDto.class, - StoragePoolOptions.class); - GeneratedHttpRequest request = processor - .apply(Invocation.create(method, ImmutableList.<Object> of(InfrastructureResources.storageDevicePut(), - StoragePoolOptions.builder().build()))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/storage/devices/1/pools HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StoragePoolsDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testCreateStoragePool() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "createStoragePool", StorageDeviceDto.class, - StoragePoolDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create( - method, - ImmutableList.<Object> of(InfrastructureResources.storageDevicePut(), - InfrastructureResources.storagePoolPost()))); - - assertRequestLineEquals(request, "POST http://localhost/api/admin/datacenters/1/storage/devices/1/pools HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StoragePoolDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.storagePoolPostPayload()), StoragePoolDto.class, - StoragePoolDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testUpdateStoragePool() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "updateStoragePool", StoragePoolDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.storagePoolPut()))); - - assertRequestLineEquals(request, - "PUT http://localhost/api/admin/datacenters/1/storage/devices/1/pools/tururututu HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StoragePoolDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(InfrastructureResources.storagePoolPutPayload()), StoragePoolDto.class, - StoragePoolDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testDeleteStoragePool() throws SecurityException, NoSuchMethodException { - Invokable<?, ?> method = method(InfrastructureApi.class, "deleteStoragePool", StoragePoolDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.storagePoolPut()))); - - assertRequestLineEquals(request, - "DELETE http://localhost/api/admin/datacenters/1/storage/devices/1/pools/tururututu HTTP/1.1"); - assertNonPayloadHeadersEqual(request, ""); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetStoragePool() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getStoragePool", StorageDeviceDto.class, String.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, ImmutableList.<Object> of( - InfrastructureResources.storageDevicePut(), InfrastructureResources.storagePoolPut().getIdStorage()))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/datacenters/1/storage/devices/1/pools/tururututu HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StoragePoolDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, NullOnNotFoundOr404.class); - - checkFilters(request); - } - - public void testRefreshStoragePool() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "refreshStoragePool", StoragePoolDto.class, - StoragePoolOptions.class); - GeneratedHttpRequest request = processor.apply(Invocation.create( - method, - ImmutableList.<Object> of(InfrastructureResources.storagePoolPut(), StoragePoolOptions.builder().sync(true) - .build()))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/datacenters/1/storage/devices/1/pools/tururututu?sync=true HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + StoragePoolDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, MapHttp4xxCodesToExceptions.class); - - checkFilters(request); - } - - /*********************** Network ***********************/ - - public void testListNetworks() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "listNetworks", DatacenterDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut()))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/network HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + VLANNetworksDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testListNetworksWithOptions() throws SecurityException, NoSuchMethodException, IOException { - NetworkOptions options = NetworkOptions.builder().type(NetworkType.PUBLIC).build(); - - Invokable<?, ?> method = method(InfrastructureApi.class, "listNetworks", DatacenterDto.class, - NetworkOptions.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), options))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/network?type=PUBLIC HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + VLANNetworksDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetNetworks() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getNetwork", DatacenterDto.class, Integer.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), 1))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/network/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + VLANNetworkDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, NullOnNotFoundOr404.class); - - checkFilters(request); - } - - public void testCreateNetwork() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "createNetwork", DatacenterDto.class, - VLANNetworkDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), NetworkResources.vlanPost()))); - - assertRequestLineEquals(request, "POST http://localhost/api/admin/datacenters/1/network HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + VLANNetworkDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(NetworkResources.vlanNetworkPostPayload()), VLANNetworkDto.class, - VLANNetworkDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testUpdateNetwork() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "updateNetwork", VLANNetworkDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(NetworkResources.publicNetworkPut()))); - - assertRequestLineEquals(request, "PUT http://localhost/api/admin/datacenters/1/network/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + VLANNetworkDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, withHeader(NetworkResources.publicNetworkPutPayload()), VLANNetworkDto.class, - VLANNetworkDto.BASE_MEDIA_TYPE, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testDeleteNetwork() throws SecurityException, NoSuchMethodException { - Invokable<?, ?> method = method(InfrastructureApi.class, "deleteNetwork", VLANNetworkDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(NetworkResources.publicNetworkPut()))); - - assertRequestLineEquals(request, "DELETE http://localhost/api/admin/datacenters/1/network/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, ""); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ReleasePayloadAndReturn.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testCheckTagAvailability() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "checkTagAvailability", DatacenterDto.class, - Integer.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(InfrastructureResources.datacenterPut(), 2))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/datacenters/1/network/action/checkavailability?tag=2 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + VlanTagAvailabilityDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, MapHttp4xxCodesToExceptions.class); - - checkFilters(request); - } - - /*********************** Network IPs ***********************/ - - public void testGetPublicIp() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getPublicIp", VLANNetworkDto.class, Integer.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(NetworkResources.publicNetworkPut(), 1))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/datacenters/1/network/1/ips/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + PublicIpDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetExternalIp() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getExternalIp", VLANNetworkDto.class, Integer.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(NetworkResources.externalNetworkPut(), 1))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/enterprises/1/limits/1/externalnetworks/1/ips/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + ExternalIpDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetUnmanagedIp() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(InfrastructureApi.class, "getUnmanagedIp", VLANNetworkDto.class, Integer.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(NetworkResources.externalNetworkPut(), 1))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/enterprises/1/limits/1/externalnetworks/1/ips/1 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + UnmanagedIpDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } -}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1b689dc1/abiquo/src/test/java/org/jclouds/abiquo/features/TaskApiTest.java ---------------------------------------------------------------------- diff --git a/abiquo/src/test/java/org/jclouds/abiquo/features/TaskApiTest.java b/abiquo/src/test/java/org/jclouds/abiquo/features/TaskApiTest.java deleted file mode 100644 index df5dca3..0000000 --- a/abiquo/src/test/java/org/jclouds/abiquo/features/TaskApiTest.java +++ /dev/null @@ -1,118 +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.abiquo.features; - -import static org.jclouds.reflect.Reflection2.method; - -import java.io.IOException; - -import org.jclouds.abiquo.AbiquoFallbacks.NullOn303; -import org.jclouds.abiquo.domain.CloudResources; -import org.jclouds.abiquo.domain.TemplateResources; -import org.jclouds.http.functions.ParseXMLWithJAXB; -import org.jclouds.reflect.Invocation; -import org.jclouds.rest.internal.GeneratedHttpRequest; -import org.testng.annotations.Test; - -import com.abiquo.model.rest.RESTLink; -import com.abiquo.model.transport.SingleResourceTransportDto; -import com.abiquo.server.core.task.TaskDto; -import com.abiquo.server.core.task.TasksDto; -import com.google.common.collect.ImmutableList; -import com.google.common.reflect.Invokable; - -/** - * Tests annotation parsing of {@code TaskApi} - */ -@Test(groups = "unit", testName = "TaskApiTest") -public class TaskApiTest extends BaseAbiquoApiTest<TaskApi> { - /*********************** Task ***********************/ - - public void testGetTaskVirtualMachine() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(TaskApi.class, "getTask", RESTLink.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(new RESTLink("task", - "http://localhost/api/cloud/virtualdatacenters/1/virtualappliances/1/virtualmachines/1" - + "/tasks/169f1877-5f17-4f62-9563-974001295c54")))); - - assertRequestLineEquals(request, - "GET http://localhost/api/cloud/virtualdatacenters/1/virtualappliances/1/virtualmachines/1/" - + "tasks/169f1877-5f17-4f62-9563-974001295c54 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + TaskDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, NullOn303.class); - - checkFilters(request); - } - - public void testListTasksVirtualMachine() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(TaskApi.class, "listTasks", SingleResourceTransportDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(CloudResources.virtualMachinePut()))); - - assertRequestLineEquals(request, - "GET http://localhost/api/cloud/virtualdatacenters/1/virtualappliances/1/virtualmachines/1/tasks HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + TasksDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } - - public void testGetTaskVirtualMachineTemplate() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(TaskApi.class, "getTask", RESTLink.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(new RESTLink("task", - "http://localhost/api/admin/enterprises/1/datacenterrepositories/1/virtualmachinetemplates/1/" - + "tasks/169f1877-5f17-4f62-9563-974001295c54")))); - - assertRequestLineEquals(request, - "GET http://localhost/api/admin/enterprises/1/datacenterrepositories/1/virtualmachinetemplates/1" - + "/tasks/169f1877-5f17-4f62-9563-974001295c54 HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + TaskDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, NullOn303.class); - - checkFilters(request); - } - - public void testListTasksVirtualMachineTemplate() throws SecurityException, NoSuchMethodException, IOException { - Invokable<?, ?> method = method(TaskApi.class, "listTasks", SingleResourceTransportDto.class); - GeneratedHttpRequest request = processor.apply(Invocation.create(method, - ImmutableList.<Object> of(TemplateResources.virtualMachineTemplatePut()))); - - assertRequestLineEquals(request, "GET http://localhost/api/admin/enterprises/1/datacenterrepositories/1/" - + "virtualmachinetemplates/1/tasks HTTP/1.1"); - assertNonPayloadHeadersEqual(request, "Accept: " + TasksDto.BASE_MEDIA_TYPE + "\n"); - assertPayloadEquals(request, null, null, false); - - assertResponseParserClassEquals(method, request, ParseXMLWithJAXB.class); - assertSaxResponseParserClassEquals(method, null); - assertFallbackClassEquals(method, null); - - checkFilters(request); - } -} http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1b689dc1/abiquo/src/test/java/org/jclouds/abiquo/features/VirtualMachineTemplateApiExpectTest.java ---------------------------------------------------------------------- diff --git a/abiquo/src/test/java/org/jclouds/abiquo/features/VirtualMachineTemplateApiExpectTest.java b/abiquo/src/test/java/org/jclouds/abiquo/features/VirtualMachineTemplateApiExpectTest.java deleted file mode 100644 index 3185504..0000000 --- a/abiquo/src/test/java/org/jclouds/abiquo/features/VirtualMachineTemplateApiExpectTest.java +++ /dev/null @@ -1,121 +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.abiquo.features; - -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNotNull; - -import java.net.URI; -import java.util.List; - -import org.jclouds.abiquo.AbiquoApi; -import org.jclouds.abiquo.domain.PaginatedCollection; -import org.jclouds.abiquo.domain.cloud.options.VirtualMachineTemplateOptions; -import org.jclouds.collect.PagedIterable; -import org.jclouds.http.HttpRequest; -import org.jclouds.http.HttpResponse; -import org.testng.annotations.Test; - -import com.abiquo.server.core.appslibrary.VirtualMachineTemplateDto; -import com.abiquo.server.core.appslibrary.VirtualMachineTemplatesDto; - -/** - * Expect tests for the {@link VirtualMachineTemplateApi}. - */ -@Test(groups = "unit", testName = "VirtualMachineTemplateApiExpectTest") -public class VirtualMachineTemplateApiExpectTest extends BaseAbiquoApiExpectTest<VirtualMachineTemplateApi> { - - public void testListVirtualMachineTemplatesWithPaginationOptions() { - VirtualMachineTemplateApi api = requestSendsResponse( - HttpRequest - .builder() - .method("GET") - .endpoint( - URI.create("http://localhost/api/admin/enterprises/1/datacenterrepositories/1/virtualmachinetemplates")) // - .addHeader("Cookie", tokenAuth) // - .addHeader("Accept", normalize(VirtualMachineTemplatesDto.MEDIA_TYPE)) // - .addQueryParam("limit", "1") // - .addQueryParam("has", "text") // - .build(), - HttpResponse - .builder() - .statusCode(200) - .payload( - payloadFromResourceWithContentType("/payloads/templates-page.xml", - normalize(VirtualMachineTemplatesDto.MEDIA_TYPE))) // - .build()); - - VirtualMachineTemplateOptions options = VirtualMachineTemplateOptions.builder().limit(1).has("text").build(); - PaginatedCollection<VirtualMachineTemplateDto, VirtualMachineTemplatesDto> result = api - .listVirtualMachineTemplates(1, 1, options); - - assertEquals(result.size(), 1); - assertEquals(result.getTotalSize().intValue(), 2); - assertEquals(result.get(0).getId().intValue(), 151); - assertNotNull(result.searchLink("first")); - assertNotNull(result.searchLink("last")); - assertNotNull(result.searchLink("next")); - } - - public void testListVirtualMachineTemplatesReturns2xx() { - VirtualMachineTemplateApi api = requestsSendResponses( - HttpRequest - .builder() - .method("GET") - .endpoint( - URI.create("http://localhost/api/admin/enterprises/1/datacenterrepositories/1/virtualmachinetemplates")) // - .addHeader("Cookie", tokenAuth) // - .addHeader("Accept", normalize(VirtualMachineTemplatesDto.MEDIA_TYPE)) // - .build(), - HttpResponse - .builder() - .statusCode(200) - .payload( - payloadFromResourceWithContentType("/payloads/templates-page.xml", - normalize(VirtualMachineTemplatesDto.MEDIA_TYPE))) // - .build(), - HttpRequest - .builder() - .method("GET") - .endpoint( - URI.create("http://localhost/api/admin/enterprises/1/datacenterrepositories/1/virtualmachinetemplates")) // - .addHeader("Cookie", tokenAuth) // - .addHeader("Accept", normalize(VirtualMachineTemplatesDto.MEDIA_TYPE)) // - .addQueryParam("startwith", "1") // - .build(), - HttpResponse - .builder() - .statusCode(200) - .payload( - payloadFromResourceWithContentType("/payloads/templates-lastpage.xml", - normalize(VirtualMachineTemplatesDto.MEDIA_TYPE))) // - .build()); - - PagedIterable<VirtualMachineTemplateDto> result = api.listVirtualMachineTemplates(1, 1); - List<VirtualMachineTemplateDto> all = result.concat().toList(); - - assertEquals(all.size(), 2); - assertEquals(all.get(0).getId().intValue(), 151); - assertEquals(all.get(1).getId().intValue(), 152); - } - - @Override - protected VirtualMachineTemplateApi clientFrom(AbiquoApi api) { - return api.getVirtualMachineTemplateApi(); - } - -}
