mirror of https://github.com/apache/jclouds.git
Code Formatting commit.
This commit is contained in:
parent
60f70a0589
commit
6d4ce41d15
|
@ -18,15 +18,16 @@
|
||||||
*/
|
*/
|
||||||
package org.jclouds.cloudstack;
|
package org.jclouds.cloudstack;
|
||||||
|
|
||||||
import com.google.inject.TypeLiteral;
|
import java.io.IOException;
|
||||||
|
import java.util.concurrent.ExecutionException;
|
||||||
|
|
||||||
import org.jclouds.cloudstack.features.BaseCloudStackAsyncClientTest;
|
import org.jclouds.cloudstack.features.BaseCloudStackAsyncClientTest;
|
||||||
import org.jclouds.http.HttpRequest;
|
import org.jclouds.http.HttpRequest;
|
||||||
import org.jclouds.rest.internal.RestAnnotationProcessor;
|
import org.jclouds.rest.internal.RestAnnotationProcessor;
|
||||||
import org.testng.annotations.BeforeClass;
|
import org.testng.annotations.BeforeClass;
|
||||||
import org.testng.annotations.Test;
|
import org.testng.annotations.Test;
|
||||||
|
|
||||||
import java.io.IOException;
|
import com.google.inject.TypeLiteral;
|
||||||
import java.util.concurrent.ExecutionException;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Tests behavior of {@code CloudStackAsyncClient}
|
* Tests behavior of {@code CloudStackAsyncClient}
|
||||||
|
|
|
@ -144,4 +144,4 @@
|
||||||
// super.tearDown();
|
// super.tearDown();
|
||||||
// }
|
// }
|
||||||
//
|
//
|
||||||
//}
|
// }
|
||||||
|
|
|
@ -38,7 +38,8 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "AccountAsyncClientTest")
|
@Test(groups = "unit", testName = "AccountAsyncClientTest")
|
||||||
public class AccountAsyncClientTest extends BaseCloudStackAsyncClientTest<AccountAsyncClient> {
|
public class AccountAsyncClientTest extends BaseCloudStackAsyncClientTest<AccountAsyncClient> {
|
||||||
|
|
||||||
|
@ -47,7 +48,7 @@ public class AccountAsyncClientTest extends BaseCloudStackAsyncClientTest<Accoun
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listAccounts HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listAccounts HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -61,11 +62,11 @@ public class AccountAsyncClientTest extends BaseCloudStackAsyncClientTest<Accoun
|
||||||
|
|
||||||
public void testListAccountsOptions() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListAccountsOptions() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = AccountAsyncClient.class.getMethod("listAccounts", ListAccountsOptions[].class);
|
Method method = AccountAsyncClient.class.getMethod("listAccounts", ListAccountsOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, ListAccountsOptions.Builder.accountInDomain("jclouds",
|
HttpRequest httpRequest = processor.createRequest(method,
|
||||||
123));
|
ListAccountsOptions.Builder.accountInDomain("jclouds", 123));
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listAccounts&account=jclouds&domainid=123 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listAccounts&account=jclouds&domainid=123 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -82,7 +83,7 @@ public class AccountAsyncClientTest extends BaseCloudStackAsyncClientTest<Accoun
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 3l);
|
HttpRequest httpRequest = processor.createRequest(method, 3l);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listAccounts&id=3 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listAccounts&id=3 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
|
|
@ -18,15 +18,15 @@
|
||||||
*/
|
*/
|
||||||
package org.jclouds.cloudstack.features;
|
package org.jclouds.cloudstack.features;
|
||||||
|
|
||||||
|
import static org.testng.Assert.assertEquals;
|
||||||
|
|
||||||
import org.jclouds.cloudstack.domain.Account;
|
import org.jclouds.cloudstack.domain.Account;
|
||||||
import org.jclouds.cloudstack.domain.User;
|
import org.jclouds.cloudstack.domain.User;
|
||||||
import org.testng.annotations.Test;
|
import org.testng.annotations.Test;
|
||||||
|
|
||||||
import static org.testng.Assert.assertEquals;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Tests behavior of {@code AccountClient}
|
* Tests behavior of {@code AccountClient}
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
@Test(groups = "live", singleThreaded = true, testName = "AccountClientLiveTest")
|
@Test(groups = "live", singleThreaded = true, testName = "AccountClientLiveTest")
|
||||||
|
|
|
@ -26,9 +26,9 @@ import org.jclouds.cloudstack.options.AssociateIPAddressOptions;
|
||||||
import org.jclouds.cloudstack.options.ListPublicIPAddressesOptions;
|
import org.jclouds.cloudstack.options.ListPublicIPAddressesOptions;
|
||||||
import org.jclouds.functions.IdentityFunction;
|
import org.jclouds.functions.IdentityFunction;
|
||||||
import org.jclouds.http.HttpRequest;
|
import org.jclouds.http.HttpRequest;
|
||||||
|
import org.jclouds.http.functions.ParseFirstJsonValueNamed;
|
||||||
import org.jclouds.http.functions.ReleasePayloadAndReturn;
|
import org.jclouds.http.functions.ReleasePayloadAndReturn;
|
||||||
import org.jclouds.http.functions.UnwrapOnlyJsonValue;
|
import org.jclouds.http.functions.UnwrapOnlyJsonValue;
|
||||||
import org.jclouds.http.functions.ParseFirstJsonValueNamed;
|
|
||||||
import org.jclouds.rest.functions.MapHttp4xxCodesToExceptions;
|
import org.jclouds.rest.functions.MapHttp4xxCodesToExceptions;
|
||||||
import org.jclouds.rest.functions.ReturnEmptySetOnNotFoundOr404;
|
import org.jclouds.rest.functions.ReturnEmptySetOnNotFoundOr404;
|
||||||
import org.jclouds.rest.functions.ReturnNullOnNotFoundOr404;
|
import org.jclouds.rest.functions.ReturnNullOnNotFoundOr404;
|
||||||
|
@ -43,12 +43,12 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "AddressAsyncClientTest")
|
@Test(groups = "unit", testName = "AddressAsyncClientTest")
|
||||||
public class AddressAsyncClientTest extends BaseCloudStackAsyncClientTest<AddressAsyncClient> {
|
public class AddressAsyncClientTest extends BaseCloudStackAsyncClientTest<AddressAsyncClient> {
|
||||||
public void testListPublicIPAddresses() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListPublicIPAddresses() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = AddressAsyncClient.class.getMethod("listPublicIPAddresses",
|
Method method = AddressAsyncClient.class.getMethod("listPublicIPAddresses", ListPublicIPAddressesOptions[].class);
|
||||||
ListPublicIPAddressesOptions[].class);
|
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
|
@ -65,8 +65,7 @@ public class AddressAsyncClientTest extends BaseCloudStackAsyncClientTest<Addres
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testListPublicIPAddressesOptions() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListPublicIPAddressesOptions() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = AddressAsyncClient.class.getMethod("listPublicIPAddresses",
|
Method method = AddressAsyncClient.class.getMethod("listPublicIPAddresses", ListPublicIPAddressesOptions[].class);
|
||||||
ListPublicIPAddressesOptions[].class);
|
|
||||||
HttpRequest httpRequest = processor.createRequest(method,
|
HttpRequest httpRequest = processor.createRequest(method,
|
||||||
ListPublicIPAddressesOptions.Builder.accountInDomain("adrian", 6).usesVirtualNetwork(true));
|
ListPublicIPAddressesOptions.Builder.accountInDomain("adrian", 6).usesVirtualNetwork(true));
|
||||||
|
|
||||||
|
@ -103,12 +102,11 @@ public class AddressAsyncClientTest extends BaseCloudStackAsyncClientTest<Addres
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testAssociateIPAddressInZone() throws SecurityException, NoSuchMethodException, IOException {
|
public void testAssociateIPAddressInZone() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = AddressAsyncClient.class.getMethod("associateIPAddressInZone",
|
Method method = AddressAsyncClient.class.getMethod("associateIPAddressInZone", long.class,
|
||||||
long.class, AssociateIPAddressOptions[].class);
|
AssociateIPAddressOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 6);
|
HttpRequest httpRequest = processor.createRequest(method, 6);
|
||||||
|
|
||||||
assertRequestLineEquals(
|
assertRequestLineEquals(httpRequest,
|
||||||
httpRequest,
|
|
||||||
"GET http://localhost:8080/client/api?response=json&command=associateIpAddress&zoneid=6 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=associateIpAddress&zoneid=6 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
|
@ -54,7 +54,7 @@ public class AddressClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
if (!networksEnabled)
|
if (!networksEnabled)
|
||||||
return;
|
return;
|
||||||
AsyncCreateResponse job = client.getAddressClient().associateIPAddressInZone(
|
AsyncCreateResponse job = client.getAddressClient().associateIPAddressInZone(
|
||||||
Iterables.get(client.getNetworkClient().listNetworks(), 0).getZoneId());
|
Iterables.get(client.getNetworkClient().listNetworks(), 0).getZoneId());
|
||||||
checkState(jobComplete.apply(job.getJobId()), "job %d failed to complete", job.getJobId());
|
checkState(jobComplete.apply(job.getJobId()), "job %d failed to complete", job.getJobId());
|
||||||
ip = client.getAsyncJobClient().<PublicIPAddress> getAsyncJob(job.getJobId()).getResult();
|
ip = client.getAsyncJobClient().<PublicIPAddress> getAsyncJob(job.getJobId()).getResult();
|
||||||
checkIP(ip);
|
checkIP(ip);
|
||||||
|
@ -76,7 +76,7 @@ public class AddressClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
assertTrue(response.size() >= 0);
|
assertTrue(response.size() >= 0);
|
||||||
for (PublicIPAddress ip : response) {
|
for (PublicIPAddress ip : response) {
|
||||||
PublicIPAddress newDetails = getOnlyElement(client.getAddressClient().listPublicIPAddresses(
|
PublicIPAddress newDetails = getOnlyElement(client.getAddressClient().listPublicIPAddresses(
|
||||||
ListPublicIPAddressesOptions.Builder.id(ip.getId())));
|
ListPublicIPAddressesOptions.Builder.id(ip.getId())));
|
||||||
assertEquals(ip.getId(), newDetails.getId());
|
assertEquals(ip.getId(), newDetails.getId());
|
||||||
checkIP(ip);
|
checkIP(ip);
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,8 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "AsyncJobAsyncClientTest")
|
@Test(groups = "unit", testName = "AsyncJobAsyncClientTest")
|
||||||
public class AsyncJobAsyncClientTest extends BaseCloudStackAsyncClientTest<AsyncJobAsyncClient> {
|
public class AsyncJobAsyncClientTest extends BaseCloudStackAsyncClientTest<AsyncJobAsyncClient> {
|
||||||
|
|
||||||
|
|
|
@ -58,7 +58,8 @@ public class AsyncJobClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
assert query.getResultCode() >= 0 : query;
|
assert query.getResultCode() >= 0 : query;
|
||||||
assert query.getProgress() >= 0 : query;
|
assert query.getProgress() >= 0 : query;
|
||||||
if (query.getResultCode() == 0) {
|
if (query.getResultCode() == 0) {
|
||||||
if (query.getResult() != null)// null is ok for result of success = true
|
if (query.getResult() != null)// null is ok for result of success =
|
||||||
|
// true
|
||||||
// ensure we parsed properly
|
// ensure we parsed properly
|
||||||
assert (query.getResult().getClass().getPackage().equals(AsyncJob.class.getPackage())) : query;
|
assert (query.getResult().getClass().getPackage().equals(AsyncJob.class.getPackage())) : query;
|
||||||
} else if (query.getResultCode() > 400) {
|
} else if (query.getResultCode() > 400) {
|
||||||
|
|
|
@ -82,11 +82,11 @@ public class BaseCloudStackClientLiveTest {
|
||||||
|
|
||||||
protected void setupCredentials() {
|
protected void setupCredentials() {
|
||||||
identity = checkNotNull(System.getProperty("test." + provider + ".identity"), "test." + provider
|
identity = checkNotNull(System.getProperty("test." + provider + ".identity"), "test." + provider
|
||||||
+ ".identity must be set. ex. apiKey");
|
+ ".identity must be set. ex. apiKey");
|
||||||
credential = checkNotNull(System.getProperty("test." + provider + ".credential"), "test." + provider
|
credential = checkNotNull(System.getProperty("test." + provider + ".credential"), "test." + provider
|
||||||
+ ".credential must be set. ex. secretKey");
|
+ ".credential must be set. ex. secretKey");
|
||||||
endpoint = checkNotNull(System.getProperty("test." + provider + ".endpoint"), "test." + provider
|
endpoint = checkNotNull(System.getProperty("test." + provider + ".endpoint"), "test." + provider
|
||||||
+ ".endpoint must be set. ex. http://localhost:8080/client/api");
|
+ ".endpoint must be set. ex. http://localhost:8080/client/api");
|
||||||
apiversion = System.getProperty("test." + provider + ".apiversion");
|
apiversion = System.getProperty("test." + provider + ".apiversion");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -121,7 +121,7 @@ public class BaseCloudStackClientLiveTest {
|
||||||
setupCredentials();
|
setupCredentials();
|
||||||
Properties overrides = setupProperties();
|
Properties overrides = setupProperties();
|
||||||
context = new RestContextFactory().createContext(provider, ImmutableSet.<Module> of(new Log4JLoggingModule()),
|
context = new RestContextFactory().createContext(provider, ImmutableSet.<Module> of(new Log4JLoggingModule()),
|
||||||
overrides);
|
overrides);
|
||||||
|
|
||||||
client = context.getApi();
|
client = context.getApi();
|
||||||
// check access
|
// check access
|
||||||
|
@ -130,8 +130,8 @@ public class BaseCloudStackClientLiveTest {
|
||||||
|
|
||||||
if (currentUser.getAccountType() != Account.Type.USER)
|
if (currentUser.getAccountType() != Account.Type.USER)
|
||||||
throw new IllegalArgumentException(String.format(
|
throw new IllegalArgumentException(String.format(
|
||||||
"invalid account type: %s, please specify an apiKey of a USER, for example: %s", currentUser
|
"invalid account type: %s, please specify an apiKey of a USER, for example: %s",
|
||||||
.getAccountType(), Iterables.filter(users, UserPredicates.isUserAccount())));
|
currentUser.getAccountType(), Iterables.filter(users, UserPredicates.isUserAccount())));
|
||||||
|
|
||||||
injector = Guice.createInjector(new SshjSshClientModule(), new Log4JLoggingModule());
|
injector = Guice.createInjector(new SshjSshClientModule(), new Log4JLoggingModule());
|
||||||
sshFactory = injector.getInstance(SshClient.Factory.class);
|
sshFactory = injector.getInstance(SshClient.Factory.class);
|
||||||
|
@ -140,10 +140,10 @@ public class BaseCloudStackClientLiveTest {
|
||||||
jobComplete = new RetryablePredicate<Long>(new JobComplete(client), 1200, 1, 5, TimeUnit.SECONDS);
|
jobComplete = new RetryablePredicate<Long>(new JobComplete(client), 1200, 1, 5, TimeUnit.SECONDS);
|
||||||
injector.injectMembers(jobComplete);
|
injector.injectMembers(jobComplete);
|
||||||
virtualMachineRunning = new RetryablePredicate<VirtualMachine>(new VirtualMachineRunning(client), 600, 5, 5,
|
virtualMachineRunning = new RetryablePredicate<VirtualMachine>(new VirtualMachineRunning(client), 600, 5, 5,
|
||||||
TimeUnit.SECONDS);
|
TimeUnit.SECONDS);
|
||||||
injector.injectMembers(virtualMachineRunning);
|
injector.injectMembers(virtualMachineRunning);
|
||||||
virtualMachineDestroyed = new RetryablePredicate<VirtualMachine>(new VirtualMachineDestroyed(client), 600, 5, 5,
|
virtualMachineDestroyed = new RetryablePredicate<VirtualMachine>(new VirtualMachineDestroyed(client), 600, 5, 5,
|
||||||
TimeUnit.SECONDS);
|
TimeUnit.SECONDS);
|
||||||
injector.injectMembers(virtualMachineDestroyed);
|
injector.injectMembers(virtualMachineDestroyed);
|
||||||
reuseOrAssociate = new ReuseOrAssociateNewPublicIPAddress(client, jobComplete);
|
reuseOrAssociate = new ReuseOrAssociateNewPublicIPAddress(client, jobComplete);
|
||||||
injector.injectMembers(reuseOrAssociate);
|
injector.injectMembers(reuseOrAssociate);
|
||||||
|
|
|
@ -34,7 +34,8 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "ConfigurationAsyncClientTest")
|
@Test(groups = "unit", testName = "ConfigurationAsyncClientTest")
|
||||||
public class ConfigurationAsyncClientTest extends BaseCloudStackAsyncClientTest<ConfigurationAsyncClient> {
|
public class ConfigurationAsyncClientTest extends BaseCloudStackAsyncClientTest<ConfigurationAsyncClient> {
|
||||||
|
|
||||||
|
@ -43,7 +44,7 @@ public class ConfigurationAsyncClientTest extends BaseCloudStackAsyncClientTest<
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listCapabilities HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listCapabilities HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
|
|
@ -23,9 +23,9 @@ import java.lang.reflect.Method;
|
||||||
|
|
||||||
import org.jclouds.cloudstack.options.ListPortForwardingRulesOptions;
|
import org.jclouds.cloudstack.options.ListPortForwardingRulesOptions;
|
||||||
import org.jclouds.http.HttpRequest;
|
import org.jclouds.http.HttpRequest;
|
||||||
|
import org.jclouds.http.functions.ParseFirstJsonValueNamed;
|
||||||
import org.jclouds.http.functions.ReleasePayloadAndReturn;
|
import org.jclouds.http.functions.ReleasePayloadAndReturn;
|
||||||
import org.jclouds.http.functions.UnwrapOnlyJsonValue;
|
import org.jclouds.http.functions.UnwrapOnlyJsonValue;
|
||||||
import org.jclouds.http.functions.ParseFirstJsonValueNamed;
|
|
||||||
import org.jclouds.rest.functions.MapHttp4xxCodesToExceptions;
|
import org.jclouds.rest.functions.MapHttp4xxCodesToExceptions;
|
||||||
import org.jclouds.rest.functions.ReturnEmptySetOnNotFoundOr404;
|
import org.jclouds.rest.functions.ReturnEmptySetOnNotFoundOr404;
|
||||||
import org.jclouds.rest.functions.ReturnVoidOnNotFoundOr404;
|
import org.jclouds.rest.functions.ReturnVoidOnNotFoundOr404;
|
||||||
|
@ -39,16 +39,17 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "FirewallAsyncClientTest")
|
@Test(groups = "unit", testName = "FirewallAsyncClientTest")
|
||||||
public class FirewallAsyncClientTest extends BaseCloudStackAsyncClientTest<FirewallAsyncClient> {
|
public class FirewallAsyncClientTest extends BaseCloudStackAsyncClientTest<FirewallAsyncClient> {
|
||||||
public void testListPortForwardingRules() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListPortForwardingRules() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = FirewallAsyncClient.class.getMethod("listPortForwardingRules",
|
Method method = FirewallAsyncClient.class.getMethod("listPortForwardingRules",
|
||||||
ListPortForwardingRulesOptions[].class);
|
ListPortForwardingRulesOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listPortForwardingRules HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listPortForwardingRules HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -62,11 +63,11 @@ public class FirewallAsyncClientTest extends BaseCloudStackAsyncClientTest<Firew
|
||||||
|
|
||||||
public void testListPortForwardingRulesOptions() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListPortForwardingRulesOptions() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = FirewallAsyncClient.class.getMethod("listPortForwardingRules",
|
Method method = FirewallAsyncClient.class.getMethod("listPortForwardingRules",
|
||||||
ListPortForwardingRulesOptions[].class);
|
ListPortForwardingRulesOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, ListPortForwardingRulesOptions.Builder.IPAddressId(3));
|
HttpRequest httpRequest = processor.createRequest(method, ListPortForwardingRulesOptions.Builder.IPAddressId(3));
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listPortForwardingRules&ipaddressid=3 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listPortForwardingRules&ipaddressid=3 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -79,14 +80,14 @@ public class FirewallAsyncClientTest extends BaseCloudStackAsyncClientTest<Firew
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testCreatePortForwardingRuleForVirtualMachine() throws SecurityException, NoSuchMethodException,
|
public void testCreatePortForwardingRuleForVirtualMachine() throws SecurityException, NoSuchMethodException,
|
||||||
IOException {
|
IOException {
|
||||||
Method method = FirewallAsyncClient.class.getMethod("createPortForwardingRuleForVirtualMachine", long.class,
|
Method method = FirewallAsyncClient.class.getMethod("createPortForwardingRuleForVirtualMachine", long.class,
|
||||||
long.class, String.class, int.class, int.class);
|
long.class, String.class, int.class, int.class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 6, 7, "tcp", 22, 22);
|
HttpRequest httpRequest = processor.createRequest(method, 6, 7, "tcp", 22, 22);
|
||||||
|
|
||||||
assertRequestLineEquals(
|
assertRequestLineEquals(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=createPortForwardingRule&virtualmachineid=6&protocol=tcp&ipaddressid=7&privateport=22&publicport=22 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=createPortForwardingRule&virtualmachineid=6&protocol=tcp&ipaddressid=7&privateport=22&publicport=22 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -103,7 +104,7 @@ public class FirewallAsyncClientTest extends BaseCloudStackAsyncClientTest<Firew
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=deletePortForwardingRule&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=deletePortForwardingRule&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "");
|
assertNonPayloadHeadersEqual(httpRequest, "");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
|
|
@ -58,7 +58,7 @@ public class FirewallClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
try {
|
try {
|
||||||
network = find(client.getNetworkClient().listNetworks(), NetworkPredicates.supportsPortForwarding());
|
network = find(client.getNetworkClient().listNetworks(), NetworkPredicates.supportsPortForwarding());
|
||||||
vm = VirtualMachineClientLiveTest.createVirtualMachineInNetwork(network, client, jobComplete,
|
vm = VirtualMachineClientLiveTest.createVirtualMachineInNetwork(network, client, jobComplete,
|
||||||
virtualMachineRunning);
|
virtualMachineRunning);
|
||||||
if (vm.getPassword() != null)
|
if (vm.getPassword() != null)
|
||||||
password = vm.getPassword();
|
password = vm.getPassword();
|
||||||
} catch (NoSuchElementException e) {
|
} catch (NoSuchElementException e) {
|
||||||
|
@ -73,7 +73,7 @@ public class FirewallClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
ip = reuseOrAssociate.apply(network);
|
ip = reuseOrAssociate.apply(network);
|
||||||
try {
|
try {
|
||||||
AsyncCreateResponse job = client.getFirewallClient().createPortForwardingRuleForVirtualMachine(vm.getId(),
|
AsyncCreateResponse job = client.getFirewallClient().createPortForwardingRuleForVirtualMachine(vm.getId(),
|
||||||
ip.getId(), "tcp", 22, 22);
|
ip.getId(), "tcp", 22, 22);
|
||||||
assert jobComplete.apply(job.getJobId());
|
assert jobComplete.apply(job.getJobId());
|
||||||
rule = findRuleWithId(job.getId());
|
rule = findRuleWithId(job.getId());
|
||||||
} catch (IllegalStateException e) {
|
} catch (IllegalStateException e) {
|
||||||
|
|
|
@ -40,7 +40,8 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "GuestOSAsyncClientTest")
|
@Test(groups = "unit", testName = "GuestOSAsyncClientTest")
|
||||||
public class GuestOSAsyncClientTest extends BaseCloudStackAsyncClientTest<GuestOSAsyncClient> {
|
public class GuestOSAsyncClientTest extends BaseCloudStackAsyncClientTest<GuestOSAsyncClient> {
|
||||||
|
|
||||||
|
@ -49,7 +50,7 @@ public class GuestOSAsyncClientTest extends BaseCloudStackAsyncClientTest<GuestO
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 11l);
|
HttpRequest httpRequest = processor.createRequest(method, 11l);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listOsCategories&id=11 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listOsCategories&id=11 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "");
|
assertNonPayloadHeadersEqual(httpRequest, "");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -66,7 +67,7 @@ public class GuestOSAsyncClientTest extends BaseCloudStackAsyncClientTest<GuestO
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listOsCategories HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listOsCategories HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "");
|
assertNonPayloadHeadersEqual(httpRequest, "");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -83,7 +84,7 @@ public class GuestOSAsyncClientTest extends BaseCloudStackAsyncClientTest<GuestO
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 11l);
|
HttpRequest httpRequest = processor.createRequest(method, 11l);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listOsTypes&id=11 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listOsTypes&id=11 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -101,7 +102,7 @@ public class GuestOSAsyncClientTest extends BaseCloudStackAsyncClientTest<GuestO
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listOsTypes HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listOsTypes HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -118,7 +119,7 @@ public class GuestOSAsyncClientTest extends BaseCloudStackAsyncClientTest<GuestO
|
||||||
HttpRequest httpRequest = processor.createRequest(method, ListOSTypesOptions.Builder.OSCategoryId(11));
|
HttpRequest httpRequest = processor.createRequest(method, ListOSTypesOptions.Builder.OSCategoryId(11));
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listOsTypes&oscategoryid=11 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listOsTypes&oscategoryid=11 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
|
|
@ -23,8 +23,8 @@ import static org.testng.Assert.assertEquals;
|
||||||
import static org.testng.Assert.assertTrue;
|
import static org.testng.Assert.assertTrue;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
|
||||||
import java.util.Map.Entry;
|
import java.util.Map.Entry;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import org.jclouds.cloudstack.domain.OSType;
|
import org.jclouds.cloudstack.domain.OSType;
|
||||||
import org.jclouds.cloudstack.options.ListOSTypesOptions;
|
import org.jclouds.cloudstack.options.ListOSTypesOptions;
|
||||||
|
@ -44,7 +44,7 @@ public class GuestOSClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
assertTrue(response.size() >= 0);
|
assertTrue(response.size() >= 0);
|
||||||
for (OSType type : response) {
|
for (OSType type : response) {
|
||||||
OSType newDetails = getOnlyElement(client.getGuestOSClient().listOSTypes(
|
OSType newDetails = getOnlyElement(client.getGuestOSClient().listOSTypes(
|
||||||
ListOSTypesOptions.Builder.id(type.getId())));
|
ListOSTypesOptions.Builder.id(type.getId())));
|
||||||
assertEquals(type.getId(), newDetails.getId());
|
assertEquals(type.getId(), newDetails.getId());
|
||||||
checkOSType(type);
|
checkOSType(type);
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,7 +34,8 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "HypervisorAsyncClientTest")
|
@Test(groups = "unit", testName = "HypervisorAsyncClientTest")
|
||||||
public class HypervisorAsyncClientTest extends BaseCloudStackAsyncClientTest<HypervisorAsyncClient> {
|
public class HypervisorAsyncClientTest extends BaseCloudStackAsyncClientTest<HypervisorAsyncClient> {
|
||||||
|
|
||||||
|
@ -43,7 +44,7 @@ public class HypervisorAsyncClientTest extends BaseCloudStackAsyncClientTest<Hyp
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listHypervisors HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listHypervisors HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "");
|
assertNonPayloadHeadersEqual(httpRequest, "");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -60,7 +61,7 @@ public class HypervisorAsyncClientTest extends BaseCloudStackAsyncClientTest<Hyp
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 11);
|
HttpRequest httpRequest = processor.createRequest(method, 11);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listHypervisors&zoneid=11 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listHypervisors&zoneid=11 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "");
|
assertNonPayloadHeadersEqual(httpRequest, "");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
|
|
@ -38,16 +38,17 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "LoadBalancerAsyncClientTest")
|
@Test(groups = "unit", testName = "LoadBalancerAsyncClientTest")
|
||||||
public class LoadBalancerAsyncClientTest extends BaseCloudStackAsyncClientTest<LoadBalancerAsyncClient> {
|
public class LoadBalancerAsyncClientTest extends BaseCloudStackAsyncClientTest<LoadBalancerAsyncClient> {
|
||||||
public void testListLoadBalancerRules() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListLoadBalancerRules() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = LoadBalancerAsyncClient.class.getMethod("listLoadBalancerRules",
|
Method method = LoadBalancerAsyncClient.class.getMethod("listLoadBalancerRules",
|
||||||
ListLoadBalancerRulesOptions[].class);
|
ListLoadBalancerRulesOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listLoadBalancerRules HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listLoadBalancerRules HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -61,11 +62,11 @@ public class LoadBalancerAsyncClientTest extends BaseCloudStackAsyncClientTest<L
|
||||||
|
|
||||||
public void testListLoadBalancerRulesOptions() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListLoadBalancerRulesOptions() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = LoadBalancerAsyncClient.class.getMethod("listLoadBalancerRules",
|
Method method = LoadBalancerAsyncClient.class.getMethod("listLoadBalancerRules",
|
||||||
ListLoadBalancerRulesOptions[].class);
|
ListLoadBalancerRulesOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, ListLoadBalancerRulesOptions.Builder.publicIPId(3));
|
HttpRequest httpRequest = processor.createRequest(method, ListLoadBalancerRulesOptions.Builder.publicIPId(3));
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listLoadBalancerRules&publicipid=3 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listLoadBalancerRules&publicipid=3 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -79,12 +80,12 @@ public class LoadBalancerAsyncClientTest extends BaseCloudStackAsyncClientTest<L
|
||||||
|
|
||||||
public void testCreateLoadBalancerRuleForPublicIP() throws SecurityException, NoSuchMethodException, IOException {
|
public void testCreateLoadBalancerRuleForPublicIP() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = LoadBalancerAsyncClient.class.getMethod("createLoadBalancerRuleForPublicIP", long.class,
|
Method method = LoadBalancerAsyncClient.class.getMethod("createLoadBalancerRuleForPublicIP", long.class,
|
||||||
Algorithm.class, String.class, int.class, int.class);
|
Algorithm.class, String.class, int.class, int.class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 6, Algorithm.LEASTCONN, "tcp", 22, 22);
|
HttpRequest httpRequest = processor.createRequest(method, 6, Algorithm.LEASTCONN, "tcp", 22, 22);
|
||||||
|
|
||||||
assertRequestLineEquals(
|
assertRequestLineEquals(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=createLoadBalancerRule&publicipid=6&name=tcp&algorithm=leastconn&privateport=22&publicport=22 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=createLoadBalancerRule&publicipid=6&name=tcp&algorithm=leastconn&privateport=22&publicport=22 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -101,7 +102,7 @@ public class LoadBalancerAsyncClientTest extends BaseCloudStackAsyncClientTest<L
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=deleteLoadBalancerRule&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=deleteLoadBalancerRule&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -114,13 +115,13 @@ public class LoadBalancerAsyncClientTest extends BaseCloudStackAsyncClientTest<L
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testListVirtualMachinesAssignedToLoadBalancerRule() throws SecurityException, NoSuchMethodException,
|
public void testListVirtualMachinesAssignedToLoadBalancerRule() throws SecurityException, NoSuchMethodException,
|
||||||
IOException {
|
IOException {
|
||||||
Method method = LoadBalancerAsyncClient.class.getMethod("listVirtualMachinesAssignedToLoadBalancerRule",
|
Method method = LoadBalancerAsyncClient.class.getMethod("listVirtualMachinesAssignedToLoadBalancerRule",
|
||||||
long.class);
|
long.class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listLoadBalancerRuleInstances&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listLoadBalancerRuleInstances&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
|
|
@ -28,11 +28,11 @@ import java.util.Set;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
import org.jclouds.cloudstack.domain.LoadBalancerRule;
|
import org.jclouds.cloudstack.domain.LoadBalancerRule;
|
||||||
|
import org.jclouds.cloudstack.domain.LoadBalancerRule.Algorithm;
|
||||||
|
import org.jclouds.cloudstack.domain.LoadBalancerRule.State;
|
||||||
import org.jclouds.cloudstack.domain.Network;
|
import org.jclouds.cloudstack.domain.Network;
|
||||||
import org.jclouds.cloudstack.domain.PublicIPAddress;
|
import org.jclouds.cloudstack.domain.PublicIPAddress;
|
||||||
import org.jclouds.cloudstack.domain.VirtualMachine;
|
import org.jclouds.cloudstack.domain.VirtualMachine;
|
||||||
import org.jclouds.cloudstack.domain.LoadBalancerRule.Algorithm;
|
|
||||||
import org.jclouds.cloudstack.domain.LoadBalancerRule.State;
|
|
||||||
import org.jclouds.cloudstack.predicates.LoadBalancerRuleActive;
|
import org.jclouds.cloudstack.predicates.LoadBalancerRuleActive;
|
||||||
import org.jclouds.cloudstack.predicates.NetworkPredicates;
|
import org.jclouds.cloudstack.predicates.NetworkPredicates;
|
||||||
import org.jclouds.net.IPSocket;
|
import org.jclouds.net.IPSocket;
|
||||||
|
@ -63,12 +63,12 @@ public class LoadBalancerClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
super.setupClient();
|
super.setupClient();
|
||||||
|
|
||||||
loadBalancerRuleActive = new RetryablePredicate<LoadBalancerRule>(new LoadBalancerRuleActive(client), 60, 1, 1,
|
loadBalancerRuleActive = new RetryablePredicate<LoadBalancerRule>(new LoadBalancerRuleActive(client), 60, 1, 1,
|
||||||
TimeUnit.SECONDS);
|
TimeUnit.SECONDS);
|
||||||
prefix += "rule";
|
prefix += "rule";
|
||||||
try {
|
try {
|
||||||
network = find(client.getNetworkClient().listNetworks(), NetworkPredicates.hasLoadBalancerService());
|
network = find(client.getNetworkClient().listNetworks(), NetworkPredicates.hasLoadBalancerService());
|
||||||
vm = VirtualMachineClientLiveTest.createVirtualMachineInNetwork(network, client, jobComplete,
|
vm = VirtualMachineClientLiveTest.createVirtualMachineInNetwork(network, client, jobComplete,
|
||||||
virtualMachineRunning);
|
virtualMachineRunning);
|
||||||
if (vm.getPassword() != null)
|
if (vm.getPassword() != null)
|
||||||
password = vm.getPassword();
|
password = vm.getPassword();
|
||||||
} catch (NoSuchElementException e) {
|
} catch (NoSuchElementException e) {
|
||||||
|
@ -83,7 +83,7 @@ public class LoadBalancerClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
ip = reuseOrAssociate.apply(network);
|
ip = reuseOrAssociate.apply(network);
|
||||||
try {
|
try {
|
||||||
rule = client.getLoadBalancerClient().createLoadBalancerRuleForPublicIP(ip.getId(), Algorithm.LEASTCONN,
|
rule = client.getLoadBalancerClient().createLoadBalancerRuleForPublicIP(ip.getId(), Algorithm.LEASTCONN,
|
||||||
prefix, 22, 22);
|
prefix, 22, 22);
|
||||||
} catch (IllegalStateException e) {
|
} catch (IllegalStateException e) {
|
||||||
// very likely an ip conflict, so retry;
|
// very likely an ip conflict, so retry;
|
||||||
}
|
}
|
||||||
|
@ -104,13 +104,14 @@ public class LoadBalancerClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
if (networksDisabled)
|
if (networksDisabled)
|
||||||
return;
|
return;
|
||||||
assert jobComplete.apply(client.getLoadBalancerClient().assignVirtualMachinesToLoadBalancerRule(rule.getId(),
|
assert jobComplete.apply(client.getLoadBalancerClient().assignVirtualMachinesToLoadBalancerRule(rule.getId(),
|
||||||
vm.getId()));
|
vm.getId()));
|
||||||
assertEquals(client.getLoadBalancerClient().listVirtualMachinesAssignedToLoadBalancerRule(rule.getId()).size(), 1);
|
assertEquals(client.getLoadBalancerClient().listVirtualMachinesAssignedToLoadBalancerRule(rule.getId()).size(), 1);
|
||||||
assert loadBalancerRuleActive.apply(rule) : rule;
|
assert loadBalancerRuleActive.apply(rule) : rule;
|
||||||
loopAndCheckSSH();
|
loopAndCheckSSH();
|
||||||
}
|
}
|
||||||
|
|
||||||
// note that when in LB mode, there's a chance you'll have a connection failure
|
// note that when in LB mode, there's a chance you'll have a connection
|
||||||
|
// failure
|
||||||
private void loopAndCheckSSH() throws IOException {
|
private void loopAndCheckSSH() throws IOException {
|
||||||
for (int i = 0; i < 5; i++) {// retry loop TODO replace with predicate.
|
for (int i = 0; i < 5; i++) {// retry loop TODO replace with predicate.
|
||||||
try {
|
try {
|
||||||
|
@ -132,7 +133,7 @@ public class LoadBalancerClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
if (networksDisabled)
|
if (networksDisabled)
|
||||||
throw new SshException();
|
throw new SshException();
|
||||||
assert jobComplete.apply(client.getLoadBalancerClient().removeVirtualMachinesFromLoadBalancerRule(rule.getId(),
|
assert jobComplete.apply(client.getLoadBalancerClient().removeVirtualMachinesFromLoadBalancerRule(rule.getId(),
|
||||||
vm.getId()));
|
vm.getId()));
|
||||||
assertEquals(client.getLoadBalancerClient().listVirtualMachinesAssignedToLoadBalancerRule(rule.getId()).size(), 0);
|
assertEquals(client.getLoadBalancerClient().listVirtualMachinesAssignedToLoadBalancerRule(rule.getId()).size(), 0);
|
||||||
assertEquals(rule.getState(), State.ADD);
|
assertEquals(rule.getState(), State.ADD);
|
||||||
checkSSH(new IPSocket(ip.getIPAddress(), 22));
|
checkSSH(new IPSocket(ip.getIPAddress(), 22));
|
||||||
|
|
|
@ -40,7 +40,8 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "NATAsyncClientTest")
|
@Test(groups = "unit", testName = "NATAsyncClientTest")
|
||||||
public class NATAsyncClientTest extends BaseCloudStackAsyncClientTest<NATAsyncClient> {
|
public class NATAsyncClientTest extends BaseCloudStackAsyncClientTest<NATAsyncClient> {
|
||||||
public void testListIPForwardingRules() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListIPForwardingRules() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
|
|
|
@ -61,7 +61,7 @@ public class NATClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
try {
|
try {
|
||||||
network = find(client.getNetworkClient().listNetworks(), NetworkPredicates.supportsStaticNAT());
|
network = find(client.getNetworkClient().listNetworks(), NetworkPredicates.supportsStaticNAT());
|
||||||
vm = VirtualMachineClientLiveTest.createVirtualMachineInNetwork(network, client, jobComplete,
|
vm = VirtualMachineClientLiveTest.createVirtualMachineInNetwork(network, client, jobComplete,
|
||||||
virtualMachineRunning);
|
virtualMachineRunning);
|
||||||
if (vm.getPassword() != null)
|
if (vm.getPassword() != null)
|
||||||
password = vm.getPassword();
|
password = vm.getPassword();
|
||||||
} catch (NoSuchElementException e) {
|
} catch (NoSuchElementException e) {
|
||||||
|
@ -73,7 +73,7 @@ public class NATClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
if (networksDisabled)
|
if (networksDisabled)
|
||||||
return;
|
return;
|
||||||
for (ip = reuseOrAssociate.apply(network); (!ip.isStaticNAT() || ip.getVirtualMachineId() != vm.getId()); ip = reuseOrAssociate
|
for (ip = reuseOrAssociate.apply(network); (!ip.isStaticNAT() || ip.getVirtualMachineId() != vm.getId()); ip = reuseOrAssociate
|
||||||
.apply(network)) {
|
.apply(network)) {
|
||||||
// check to see if someone already grabbed this ip
|
// check to see if someone already grabbed this ip
|
||||||
if (ip.getVirtualMachineId() > 0 && ip.getVirtualMachineId() != vm.getId())
|
if (ip.getVirtualMachineId() > 0 && ip.getVirtualMachineId() != vm.getId())
|
||||||
continue;
|
continue;
|
||||||
|
@ -130,7 +130,7 @@ public class NATClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
assertTrue(response.size() >= 0);
|
assertTrue(response.size() >= 0);
|
||||||
for (IPForwardingRule rule : response) {
|
for (IPForwardingRule rule : response) {
|
||||||
IPForwardingRule newDetails = getOnlyElement(client.getNATClient().listIPForwardingRules(
|
IPForwardingRule newDetails = getOnlyElement(client.getNATClient().listIPForwardingRules(
|
||||||
ListIPForwardingRulesOptions.Builder.id(rule.getId())));
|
ListIPForwardingRulesOptions.Builder.id(rule.getId())));
|
||||||
assertEquals(rule.getId(), newDetails.getId());
|
assertEquals(rule.getId(), newDetails.getId());
|
||||||
checkRule(rule);
|
checkRule(rule);
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,7 +41,8 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "NetworkAsyncClientTest")
|
@Test(groups = "unit", testName = "NetworkAsyncClientTest")
|
||||||
public class NetworkAsyncClientTest extends BaseCloudStackAsyncClientTest<NetworkAsyncClient> {
|
public class NetworkAsyncClientTest extends BaseCloudStackAsyncClientTest<NetworkAsyncClient> {
|
||||||
public void testListNetworks() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListNetworks() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
|
@ -49,7 +50,7 @@ public class NetworkAsyncClientTest extends BaseCloudStackAsyncClientTest<Networ
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listNetworks HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listNetworks HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -64,10 +65,10 @@ public class NetworkAsyncClientTest extends BaseCloudStackAsyncClientTest<Networ
|
||||||
public void testListNetworksOptions() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListNetworksOptions() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = NetworkAsyncClient.class.getMethod("listNetworks", ListNetworksOptions[].class);
|
Method method = NetworkAsyncClient.class.getMethod("listNetworks", ListNetworksOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, ListNetworksOptions.Builder.type(NetworkType.ADVANCED)
|
HttpRequest httpRequest = processor.createRequest(method, ListNetworksOptions.Builder.type(NetworkType.ADVANCED)
|
||||||
.domainId(6).id(5));
|
.domainId(6).id(5));
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listNetworks&type=Advanced&domainid=6&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listNetworks&type=Advanced&domainid=6&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -84,7 +85,7 @@ public class NetworkAsyncClientTest extends BaseCloudStackAsyncClientTest<Networ
|
||||||
HttpRequest httpRequest = processor.createRequest(method, "id");
|
HttpRequest httpRequest = processor.createRequest(method, "id");
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listNetworks&id=id HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listNetworks&id=id HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -99,11 +100,12 @@ public class NetworkAsyncClientTest extends BaseCloudStackAsyncClientTest<Networ
|
||||||
|
|
||||||
public void testCreateNetworkInZone() throws SecurityException, NoSuchMethodException, IOException {
|
public void testCreateNetworkInZone() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = NetworkAsyncClient.class.getMethod("createNetworkInZone", long.class, long.class, String.class,
|
Method method = NetworkAsyncClient.class.getMethod("createNetworkInZone", long.class, long.class, String.class,
|
||||||
String.class, CreateNetworkOptions[].class);
|
String.class, CreateNetworkOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 1, 2, "named", "lovely");
|
HttpRequest httpRequest = processor.createRequest(method, 1, 2, "named", "lovely");
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(
|
||||||
"GET http://localhost:8080/client/api?response=json&command=createNetwork&zoneid=1&name=named&networkofferingid=2&displaytext=lovely HTTP/1.1");
|
httpRequest,
|
||||||
|
"GET http://localhost:8080/client/api?response=json&command=createNetwork&zoneid=1&name=named&networkofferingid=2&displaytext=lovely HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -117,13 +119,14 @@ public class NetworkAsyncClientTest extends BaseCloudStackAsyncClientTest<Networ
|
||||||
|
|
||||||
public void testCreateNetworkInZoneOptions() throws SecurityException, NoSuchMethodException, IOException {
|
public void testCreateNetworkInZoneOptions() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = NetworkAsyncClient.class.getMethod("createNetworkInZone", long.class, long.class, String.class,
|
Method method = NetworkAsyncClient.class.getMethod("createNetworkInZone", long.class, long.class, String.class,
|
||||||
String.class, CreateNetworkOptions[].class);
|
String.class, CreateNetworkOptions[].class);
|
||||||
|
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 1, 2, "named", "lovely", CreateNetworkOptions.Builder
|
HttpRequest httpRequest = processor.createRequest(method, 1, 2, "named", "lovely", CreateNetworkOptions.Builder
|
||||||
.netmask("255.255.255.0").domainId(6));
|
.netmask("255.255.255.0").domainId(6));
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(
|
||||||
"GET http://localhost:8080/client/api?response=json&command=createNetwork&zoneid=1&name=named&networkofferingid=2&displaytext=lovely&netmask=255.255.255.0&domainid=6 HTTP/1.1");
|
httpRequest,
|
||||||
|
"GET http://localhost:8080/client/api?response=json&command=createNetwork&zoneid=1&name=named&networkofferingid=2&displaytext=lovely&netmask=255.255.255.0&domainid=6 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -140,7 +143,7 @@ public class NetworkAsyncClientTest extends BaseCloudStackAsyncClientTest<Networ
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=deleteNetwork&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=deleteNetwork&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
|
|
@ -40,7 +40,8 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "ServiceOfferingAsyncClientTest")
|
@Test(groups = "unit", testName = "ServiceOfferingAsyncClientTest")
|
||||||
public class OfferingAsyncClientTest extends BaseCloudStackAsyncClientTest<OfferingAsyncClient> {
|
public class OfferingAsyncClientTest extends BaseCloudStackAsyncClientTest<OfferingAsyncClient> {
|
||||||
public void testListDiskOfferings() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListDiskOfferings() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
|
|
|
@ -50,7 +50,7 @@ public class OfferingClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
assertTrue(offeringCount >= 0);
|
assertTrue(offeringCount >= 0);
|
||||||
for (DiskOffering offering : response) {
|
for (DiskOffering offering : response) {
|
||||||
DiskOffering newDetails = Iterables.getOnlyElement(client.getOfferingClient().listDiskOfferings(
|
DiskOffering newDetails = Iterables.getOnlyElement(client.getOfferingClient().listDiskOfferings(
|
||||||
ListDiskOfferingsOptions.Builder.id(offering.getId())));
|
ListDiskOfferingsOptions.Builder.id(offering.getId())));
|
||||||
assertEquals(offering, newDetails);
|
assertEquals(offering, newDetails);
|
||||||
assertEquals(offering, client.getOfferingClient().getDiskOffering(offering.getId()));
|
assertEquals(offering, client.getOfferingClient().getDiskOffering(offering.getId()));
|
||||||
assert offering.getId() > 0 : offering;
|
assert offering.getId() > 0 : offering;
|
||||||
|
@ -69,7 +69,7 @@ public class OfferingClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
assertTrue(offeringCount >= 0);
|
assertTrue(offeringCount >= 0);
|
||||||
for (ServiceOffering offering : response) {
|
for (ServiceOffering offering : response) {
|
||||||
ServiceOffering newDetails = Iterables.getOnlyElement(client.getOfferingClient().listServiceOfferings(
|
ServiceOffering newDetails = Iterables.getOnlyElement(client.getOfferingClient().listServiceOfferings(
|
||||||
ListServiceOfferingsOptions.Builder.id(offering.getId())));
|
ListServiceOfferingsOptions.Builder.id(offering.getId())));
|
||||||
assertEquals(offering, newDetails);
|
assertEquals(offering, newDetails);
|
||||||
|
|
||||||
assert offering.getId() > 0 : offering;
|
assert offering.getId() > 0 : offering;
|
||||||
|
@ -91,7 +91,7 @@ public class OfferingClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
assertTrue(offeringCount >= 0);
|
assertTrue(offeringCount >= 0);
|
||||||
for (NetworkOffering offering : response) {
|
for (NetworkOffering offering : response) {
|
||||||
NetworkOffering newDetails = Iterables.getOnlyElement(client.getOfferingClient().listNetworkOfferings(
|
NetworkOffering newDetails = Iterables.getOnlyElement(client.getOfferingClient().listNetworkOfferings(
|
||||||
ListNetworkOfferingsOptions.Builder.id(offering.getId())));
|
ListNetworkOfferingsOptions.Builder.id(offering.getId())));
|
||||||
assertEquals(offering, newDetails);
|
assertEquals(offering, newDetails);
|
||||||
assertEquals(offering, client.getOfferingClient().getNetworkOffering(offering.getId()));
|
assertEquals(offering, client.getOfferingClient().getNetworkOffering(offering.getId()));
|
||||||
assert offering.getId() > 0 : offering;
|
assert offering.getId() > 0 : offering;
|
||||||
|
|
|
@ -46,7 +46,8 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "SecurityGroupAsyncClientTest")
|
@Test(groups = "unit", testName = "SecurityGroupAsyncClientTest")
|
||||||
public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<SecurityGroupAsyncClient> {
|
public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<SecurityGroupAsyncClient> {
|
||||||
|
|
||||||
|
@ -55,7 +56,7 @@ public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listSecurityGroups HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listSecurityGroups HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -70,11 +71,11 @@ public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<
|
||||||
public void testListSecurityGroupsOptions() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListSecurityGroupsOptions() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = SecurityGroupAsyncClient.class.getMethod("listSecurityGroups", ListSecurityGroupsOptions[].class);
|
Method method = SecurityGroupAsyncClient.class.getMethod("listSecurityGroups", ListSecurityGroupsOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, ListSecurityGroupsOptions.Builder.virtualMachineId(4)
|
HttpRequest httpRequest = processor.createRequest(method, ListSecurityGroupsOptions.Builder.virtualMachineId(4)
|
||||||
.domainId(5).id(6));
|
.domainId(5).id(6));
|
||||||
|
|
||||||
assertRequestLineEquals(
|
assertRequestLineEquals(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listSecurityGroups&virtualmachineid=4&domainid=5&id=6 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listSecurityGroups&virtualmachineid=4&domainid=5&id=6 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -91,7 +92,7 @@ public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listSecurityGroups&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listSecurityGroups&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -109,7 +110,7 @@ public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<
|
||||||
HttpRequest httpRequest = processor.createRequest(method, "goo");
|
HttpRequest httpRequest = processor.createRequest(method, "goo");
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=createSecurityGroup&name=goo HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=createSecurityGroup&name=goo HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -123,13 +124,13 @@ public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<
|
||||||
|
|
||||||
public void testAuthorizeIngressPortsToCIDRs() throws SecurityException, NoSuchMethodException, IOException {
|
public void testAuthorizeIngressPortsToCIDRs() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = SecurityGroupAsyncClient.class.getMethod("authorizeIngressPortsToCIDRs", long.class,
|
Method method = SecurityGroupAsyncClient.class.getMethod("authorizeIngressPortsToCIDRs", long.class,
|
||||||
String.class, int.class, int.class, Iterable.class, AccountInDomainOptions[].class);
|
String.class, int.class, int.class, Iterable.class, AccountInDomainOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 2, "tcp", 22, 22, ImmutableSet.of("1.1.1.1/24",
|
HttpRequest httpRequest = processor.createRequest(method, 2, "tcp", 22, 22,
|
||||||
"1.2.2.2/16"));
|
ImmutableSet.of("1.1.1.1/24", "1.2.2.2/16"));
|
||||||
|
|
||||||
assertRequestLineEquals(
|
assertRequestLineEquals(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=authorizeSecurityGroupIngress&securitygroupid=2&startport=22&protocol=tcp&endport=22&cidrlist=1.1.1.1%2F24%2C1.2.2.2%2F16 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=authorizeSecurityGroupIngress&securitygroupid=2&startport=22&protocol=tcp&endport=22&cidrlist=1.1.1.1%2F24%2C1.2.2.2%2F16 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -143,13 +144,13 @@ public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<
|
||||||
|
|
||||||
public void testAuthorizeIngressPortsToSecurityGroups() throws SecurityException, NoSuchMethodException, IOException {
|
public void testAuthorizeIngressPortsToSecurityGroups() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = SecurityGroupAsyncClient.class.getMethod("authorizeIngressPortsToSecurityGroups", long.class,
|
Method method = SecurityGroupAsyncClient.class.getMethod("authorizeIngressPortsToSecurityGroups", long.class,
|
||||||
String.class, int.class, int.class, Multimap.class, AccountInDomainOptions[].class);
|
String.class, int.class, int.class, Multimap.class, AccountInDomainOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 2, "tcp", 22, 22, ImmutableMultimap.of("adrian",
|
HttpRequest httpRequest = processor.createRequest(method, 2, "tcp", 22, 22,
|
||||||
"group1", "adrian", "group2", "bob", "group1"));
|
ImmutableMultimap.of("adrian", "group1", "adrian", "group2", "bob", "group1"));
|
||||||
|
|
||||||
assertRequestLineEquals(
|
assertRequestLineEquals(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=authorizeSecurityGroupIngress&securitygroupid=2&startport=22&protocol=tcp&endport=22&usersecuritygrouplist%5B0%5D.account=adrian&usersecuritygrouplist%5B0%5D.group=group1&usersecuritygrouplist%5B1%5D.account=adrian&usersecuritygrouplist%5B1%5D.group=group2&usersecuritygrouplist%5B2%5D.account=bob&usersecuritygrouplist%5B2%5D.group=group1 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=authorizeSecurityGroupIngress&securitygroupid=2&startport=22&protocol=tcp&endport=22&usersecuritygrouplist%5B0%5D.account=adrian&usersecuritygrouplist%5B0%5D.group=group1&usersecuritygrouplist%5B1%5D.account=adrian&usersecuritygrouplist%5B1%5D.group=group2&usersecuritygrouplist%5B2%5D.account=bob&usersecuritygrouplist%5B2%5D.group=group1 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -163,12 +164,12 @@ public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<
|
||||||
|
|
||||||
public void testAuthorizeIngressICMPToCIDRs() throws SecurityException, NoSuchMethodException, IOException {
|
public void testAuthorizeIngressICMPToCIDRs() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = SecurityGroupAsyncClient.class.getMethod("authorizeIngressICMPToCIDRs", long.class, int.class,
|
Method method = SecurityGroupAsyncClient.class.getMethod("authorizeIngressICMPToCIDRs", long.class, int.class,
|
||||||
int.class, Iterable.class, AccountInDomainOptions[].class);
|
int.class, Iterable.class, AccountInDomainOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 2, 22, 22, ImmutableSet.of("1.1.1.1/24", "1.2.2.2/16"));
|
HttpRequest httpRequest = processor.createRequest(method, 2, 22, 22, ImmutableSet.of("1.1.1.1/24", "1.2.2.2/16"));
|
||||||
|
|
||||||
assertRequestLineEquals(
|
assertRequestLineEquals(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=authorizeSecurityGroupIngress&protocol=ICMP&securitygroupid=2&icmptype=22&icmpcode=22&cidrlist=1.1.1.1%2F24%2C1.2.2.2%2F16 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=authorizeSecurityGroupIngress&protocol=ICMP&securitygroupid=2&icmptype=22&icmpcode=22&cidrlist=1.1.1.1%2F24%2C1.2.2.2%2F16 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -182,13 +183,13 @@ public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<
|
||||||
|
|
||||||
public void testAuthorizeIngressICMPToSecurityGroups() throws SecurityException, NoSuchMethodException, IOException {
|
public void testAuthorizeIngressICMPToSecurityGroups() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = SecurityGroupAsyncClient.class.getMethod("authorizeIngressICMPToSecurityGroups", long.class,
|
Method method = SecurityGroupAsyncClient.class.getMethod("authorizeIngressICMPToSecurityGroups", long.class,
|
||||||
int.class, int.class, Multimap.class, AccountInDomainOptions[].class);
|
int.class, int.class, Multimap.class, AccountInDomainOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 2, 22, 22, ImmutableMultimap.of("adrian", "group1",
|
HttpRequest httpRequest = processor.createRequest(method, 2, 22, 22,
|
||||||
"adrian", "group2", "bob", "group1"));
|
ImmutableMultimap.of("adrian", "group1", "adrian", "group2", "bob", "group1"));
|
||||||
|
|
||||||
assertRequestLineEquals(
|
assertRequestLineEquals(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=authorizeSecurityGroupIngress&protocol=ICMP&securitygroupid=2&icmptype=22&icmpcode=22&usersecuritygrouplist%5B0%5D.account=adrian&usersecuritygrouplist%5B0%5D.group=group1&usersecuritygrouplist%5B1%5D.account=adrian&usersecuritygrouplist%5B1%5D.group=group2&usersecuritygrouplist%5B2%5D.account=bob&usersecuritygrouplist%5B2%5D.group=group1 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=authorizeSecurityGroupIngress&protocol=ICMP&securitygroupid=2&icmptype=22&icmpcode=22&usersecuritygrouplist%5B0%5D.account=adrian&usersecuritygrouplist%5B0%5D.group=group1&usersecuritygrouplist%5B1%5D.account=adrian&usersecuritygrouplist%5B1%5D.group=group2&usersecuritygrouplist%5B2%5D.account=bob&usersecuritygrouplist%5B2%5D.group=group1 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -202,12 +203,13 @@ public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<
|
||||||
|
|
||||||
public void testRevokeIngressRule() throws SecurityException, NoSuchMethodException, IOException {
|
public void testRevokeIngressRule() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = SecurityGroupAsyncClient.class.getMethod("revokeIngressRule", long.class,
|
Method method = SecurityGroupAsyncClient.class.getMethod("revokeIngressRule", long.class,
|
||||||
AccountInDomainOptions[].class);
|
AccountInDomainOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5, AccountInDomainOptions.Builder.accountInDomain(
|
HttpRequest httpRequest = processor.createRequest(method, 5,
|
||||||
"adrian", 1));
|
AccountInDomainOptions.Builder.accountInDomain("adrian", 1));
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(
|
||||||
"GET http://localhost:8080/client/api?response=json&command=revokeSecurityGroupIngress&id=5&account=adrian&domainid=1 HTTP/1.1");
|
httpRequest,
|
||||||
|
"GET http://localhost:8080/client/api?response=json&command=revokeSecurityGroupIngress&id=5&account=adrian&domainid=1 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -224,7 +226,7 @@ public class SecurityGroupAsyncClientTest extends BaseCloudStackAsyncClientTest<
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=deleteSecurityGroup&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=deleteSecurityGroup&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "");
|
assertNonPayloadHeadersEqual(httpRequest, "");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
|
|
@ -39,7 +39,8 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "TemplateAsyncClientTest")
|
@Test(groups = "unit", testName = "TemplateAsyncClientTest")
|
||||||
public class TemplateAsyncClientTest extends BaseCloudStackAsyncClientTest<TemplateAsyncClient> {
|
public class TemplateAsyncClientTest extends BaseCloudStackAsyncClientTest<TemplateAsyncClient> {
|
||||||
public void testListTemplates() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListTemplates() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
|
@ -47,7 +48,7 @@ public class TemplateAsyncClientTest extends BaseCloudStackAsyncClientTest<Templ
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listTemplates&templatefilter=executable HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listTemplates&templatefilter=executable HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -61,12 +62,15 @@ public class TemplateAsyncClientTest extends BaseCloudStackAsyncClientTest<Templ
|
||||||
|
|
||||||
public void testListTemplatesOptions() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListTemplatesOptions() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = TemplateAsyncClient.class.getMethod("listTemplates", ListTemplatesOptions.class);
|
Method method = TemplateAsyncClient.class.getMethod("listTemplates", ListTemplatesOptions.class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, ListTemplatesOptions.Builder.accountInDomain("adrian",
|
HttpRequest httpRequest = processor
|
||||||
6).hypervisor("xen").filter(TemplateFilter.FEATURED));
|
.createRequest(
|
||||||
|
method,
|
||||||
|
ListTemplatesOptions.Builder.accountInDomain("adrian", 6).hypervisor("xen")
|
||||||
|
.filter(TemplateFilter.FEATURED));
|
||||||
|
|
||||||
assertRequestLineEquals(
|
assertRequestLineEquals(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listTemplates&account=adrian&domainid=6&hypervisor=xen&templatefilter=featured HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listTemplates&account=adrian&domainid=6&hypervisor=xen&templatefilter=featured HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -82,8 +86,9 @@ public class TemplateAsyncClientTest extends BaseCloudStackAsyncClientTest<Templ
|
||||||
Method method = TemplateAsyncClient.class.getMethod("getTemplateInZone", long.class, long.class);
|
Method method = TemplateAsyncClient.class.getMethod("getTemplateInZone", long.class, long.class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 1, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 1, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listTemplates&templatefilter=executable&zoneid=1&id=5 HTTP/1.1");
|
httpRequest,
|
||||||
|
"GET http://localhost:8080/client/api?response=json&command=listTemplates&templatefilter=executable&zoneid=1&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
|
|
@ -18,13 +18,13 @@
|
||||||
*/
|
*/
|
||||||
package org.jclouds.cloudstack.features;
|
package org.jclouds.cloudstack.features;
|
||||||
|
|
||||||
|
import static org.jclouds.cloudstack.options.ListTemplatesOptions.Builder.zoneId;
|
||||||
import static org.testng.Assert.assertEquals;
|
import static org.testng.Assert.assertEquals;
|
||||||
import static org.testng.Assert.assertTrue;
|
import static org.testng.Assert.assertTrue;
|
||||||
|
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import org.jclouds.cloudstack.domain.Template;
|
import org.jclouds.cloudstack.domain.Template;
|
||||||
import static org.jclouds.cloudstack.options.ListTemplatesOptions.Builder.zoneId;
|
|
||||||
import org.testng.annotations.Test;
|
import org.testng.annotations.Test;
|
||||||
|
|
||||||
import com.google.common.collect.Iterables;
|
import com.google.common.collect.Iterables;
|
||||||
|
@ -44,7 +44,7 @@ public class TemplateClientLiveTest extends BaseCloudStackClientLiveTest {
|
||||||
assertTrue(templateCount >= 0);
|
assertTrue(templateCount >= 0);
|
||||||
for (Template template : response) {
|
for (Template template : response) {
|
||||||
Template newDetails = Iterables.getOnlyElement(client.getTemplateClient().listTemplates(
|
Template newDetails = Iterables.getOnlyElement(client.getTemplateClient().listTemplates(
|
||||||
zoneId(template.getZoneId()).id(template.getId())));
|
zoneId(template.getZoneId()).id(template.getId())));
|
||||||
assertEquals(template, newDetails);
|
assertEquals(template, newDetails);
|
||||||
assertEquals(template, client.getTemplateClient().getTemplateInZone(template.getZoneId(), template.getId()));
|
assertEquals(template, client.getTemplateClient().getTemplateInZone(template.getZoneId(), template.getId()));
|
||||||
assert template.getId() > 0 : template;
|
assert template.getId() > 0 : template;
|
||||||
|
|
|
@ -42,16 +42,17 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "VirtualMachineAsyncClientTest")
|
@Test(groups = "unit", testName = "VirtualMachineAsyncClientTest")
|
||||||
public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest<VirtualMachineAsyncClient> {
|
public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest<VirtualMachineAsyncClient> {
|
||||||
public void testListVirtualMachines() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListVirtualMachines() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = VirtualMachineAsyncClient.class.getMethod("listVirtualMachines",
|
Method method = VirtualMachineAsyncClient.class.getMethod("listVirtualMachines",
|
||||||
ListVirtualMachinesOptions[].class);
|
ListVirtualMachinesOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method);
|
HttpRequest httpRequest = processor.createRequest(method);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listVirtualMachines HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listVirtualMachines HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -65,13 +66,13 @@ public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest
|
||||||
|
|
||||||
public void testListVirtualMachinesOptions() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListVirtualMachinesOptions() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = VirtualMachineAsyncClient.class.getMethod("listVirtualMachines",
|
Method method = VirtualMachineAsyncClient.class.getMethod("listVirtualMachines",
|
||||||
ListVirtualMachinesOptions[].class);
|
ListVirtualMachinesOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, ListVirtualMachinesOptions.Builder.accountInDomain(
|
HttpRequest httpRequest = processor.createRequest(method,
|
||||||
"adrian", 6).usesVirtualNetwork(true));
|
ListVirtualMachinesOptions.Builder.accountInDomain("adrian", 6).usesVirtualNetwork(true));
|
||||||
|
|
||||||
assertRequestLineEquals(
|
assertRequestLineEquals(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listVirtualMachines&account=adrian&domainid=6&forvirtualnetwork=true HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listVirtualMachines&account=adrian&domainid=6&forvirtualnetwork=true HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -88,7 +89,7 @@ public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=listVirtualMachines&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=listVirtualMachines&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -103,12 +104,12 @@ public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest
|
||||||
|
|
||||||
public void testDeployVirtualMachineInZone() throws SecurityException, NoSuchMethodException, IOException {
|
public void testDeployVirtualMachineInZone() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
Method method = VirtualMachineAsyncClient.class.getMethod("deployVirtualMachineInZone", long.class, long.class,
|
Method method = VirtualMachineAsyncClient.class.getMethod("deployVirtualMachineInZone", long.class, long.class,
|
||||||
long.class, DeployVirtualMachineOptions[].class);
|
long.class, DeployVirtualMachineOptions[].class);
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 6, 4, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 6, 4, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(
|
assertRequestLineEquals(
|
||||||
httpRequest,
|
httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=deployVirtualMachine&zoneid=6&templateid=5&serviceofferingid=4 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=deployVirtualMachine&zoneid=6&templateid=5&serviceofferingid=4 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -125,7 +126,7 @@ public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=rebootVirtualMachine&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=rebootVirtualMachine&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -142,7 +143,7 @@ public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=startVirtualMachine&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=startVirtualMachine&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -159,7 +160,7 @@ public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=stopVirtualMachine&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=stopVirtualMachine&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -176,7 +177,7 @@ public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=resetPasswordForVirtualMachine&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=resetPasswordForVirtualMachine&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -193,7 +194,7 @@ public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=changeServiceForVirtualMachine&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=changeServiceForVirtualMachine&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -210,7 +211,7 @@ public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=updateVirtualMachine&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=updateVirtualMachine&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
@ -227,7 +228,7 @@ public class VirtualMachineAsyncClientTest extends BaseCloudStackAsyncClientTest
|
||||||
HttpRequest httpRequest = processor.createRequest(method, 5);
|
HttpRequest httpRequest = processor.createRequest(method, 5);
|
||||||
|
|
||||||
assertRequestLineEquals(httpRequest,
|
assertRequestLineEquals(httpRequest,
|
||||||
"GET http://localhost:8080/client/api?response=json&command=destroyVirtualMachine&id=5 HTTP/1.1");
|
"GET http://localhost:8080/client/api?response=json&command=destroyVirtualMachine&id=5 HTTP/1.1");
|
||||||
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
assertNonPayloadHeadersEqual(httpRequest, "Accept: application/json\n");
|
||||||
assertPayloadEquals(httpRequest, null, null, false);
|
assertPayloadEquals(httpRequest, null, null, false);
|
||||||
|
|
||||||
|
|
|
@ -39,7 +39,8 @@ import com.google.inject.TypeLiteral;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "ZoneAsyncClientTest")
|
@Test(groups = "unit", testName = "ZoneAsyncClientTest")
|
||||||
public class ZoneAsyncClientTest extends BaseCloudStackAsyncClientTest<ZoneAsyncClient> {
|
public class ZoneAsyncClientTest extends BaseCloudStackAsyncClientTest<ZoneAsyncClient> {
|
||||||
public void testListZones() throws SecurityException, NoSuchMethodException, IOException {
|
public void testListZones() throws SecurityException, NoSuchMethodException, IOException {
|
||||||
|
|
|
@ -27,11 +27,11 @@ import java.util.Map;
|
||||||
import org.jclouds.PropertiesBuilder;
|
import org.jclouds.PropertiesBuilder;
|
||||||
import org.jclouds.http.HttpRequest;
|
import org.jclouds.http.HttpRequest;
|
||||||
import org.jclouds.logging.config.NullLoggingModule;
|
import org.jclouds.logging.config.NullLoggingModule;
|
||||||
|
import org.jclouds.rest.BaseRestClientTest.MockModule;
|
||||||
import org.jclouds.rest.RequestSigner;
|
import org.jclouds.rest.RequestSigner;
|
||||||
import org.jclouds.rest.RestContextBuilder;
|
import org.jclouds.rest.RestContextBuilder;
|
||||||
import org.jclouds.rest.RestContextFactory;
|
import org.jclouds.rest.RestContextFactory;
|
||||||
import org.jclouds.rest.RestContextSpec;
|
import org.jclouds.rest.RestContextSpec;
|
||||||
import org.jclouds.rest.BaseRestClientTest.MockModule;
|
|
||||||
import org.testng.annotations.Test;
|
import org.testng.annotations.Test;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
|
@ -43,55 +43,57 @@ import com.google.inject.Module;
|
||||||
*
|
*
|
||||||
* @author Adrian Cole
|
* @author Adrian Cole
|
||||||
*/
|
*/
|
||||||
// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
|
// NOTE:without testName, this will not call @Before* and fail w/NPE during
|
||||||
|
// surefire
|
||||||
@Test(groups = "unit", testName = "QuerySignerTest")
|
@Test(groups = "unit", testName = "QuerySignerTest")
|
||||||
public class QuerySignerTest {
|
public class QuerySignerTest {
|
||||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||||
public static final RestContextSpec<Map, List> DUMMY_SPEC = new RestContextSpec<Map, List>("cloudstack",
|
public static final RestContextSpec<Map, List> DUMMY_SPEC = new RestContextSpec<Map, List>("cloudstack",
|
||||||
"http://localhost:8080/client/api", "2.2", "", "apiKey", "secretKey", Map.class, List.class,
|
"http://localhost:8080/client/api", "2.2", "", "apiKey", "secretKey", Map.class, List.class,
|
||||||
PropertiesBuilder.class, (Class) RestContextBuilder.class, ImmutableList.<Module> of(new MockModule(),
|
PropertiesBuilder.class, (Class) RestContextBuilder.class, ImmutableList.<Module> of(new MockModule(),
|
||||||
new NullLoggingModule(), new AbstractModule() {
|
new NullLoggingModule(), new AbstractModule() {
|
||||||
@Override
|
@Override
|
||||||
protected void configure() {
|
protected void configure() {
|
||||||
bind(RequestSigner.class).to(QuerySigner.class);
|
bind(RequestSigner.class).to(QuerySigner.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
}));
|
}));
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testCreateStringToSign() {
|
void testCreateStringToSign() {
|
||||||
QuerySigner filter = RestContextFactory.createContextBuilder(DUMMY_SPEC).buildInjector().getInstance(
|
QuerySigner filter = RestContextFactory.createContextBuilder(DUMMY_SPEC).buildInjector()
|
||||||
QuerySigner.class);
|
.getInstance(QuerySigner.class);
|
||||||
|
|
||||||
assertEquals(filter.createStringToSign(HttpRequest.builder().method("GET").endpoint(
|
assertEquals(
|
||||||
URI.create("http://localhost:8080/client/api?command=listZones")).build()),
|
filter.createStringToSign(HttpRequest.builder().method("GET")
|
||||||
"apikey=apikey&command=listzones");
|
.endpoint(URI.create("http://localhost:8080/client/api?command=listZones")).build()),
|
||||||
|
"apikey=apikey&command=listzones");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testFilter() {
|
void testFilter() {
|
||||||
QuerySigner filter = RestContextFactory.createContextBuilder(DUMMY_SPEC).buildInjector().getInstance(
|
QuerySigner filter = RestContextFactory.createContextBuilder(DUMMY_SPEC).buildInjector()
|
||||||
QuerySigner.class);
|
.getInstance(QuerySigner.class);
|
||||||
|
|
||||||
assertEquals(
|
assertEquals(
|
||||||
filter.filter(
|
filter.filter(
|
||||||
HttpRequest.builder().method("GET").endpoint(
|
HttpRequest.builder().method("GET")
|
||||||
URI.create("http://localhost:8080/client/api?command=listZones")).build())
|
.endpoint(URI.create("http://localhost:8080/client/api?command=listZones")).build())
|
||||||
.getRequestLine(),
|
.getRequestLine(),
|
||||||
"GET http://localhost:8080/client/api?command=listZones&apiKey=apiKey&signature=2UG8AcnMaozL3BINdjgkJ%2BRzjEY%3D HTTP/1.1");
|
"GET http://localhost:8080/client/api?command=listZones&apiKey=apiKey&signature=2UG8AcnMaozL3BINdjgkJ%2BRzjEY%3D HTTP/1.1");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testFilterTwice() {
|
void testFilterTwice() {
|
||||||
QuerySigner filter = RestContextFactory.createContextBuilder(DUMMY_SPEC).buildInjector().getInstance(
|
QuerySigner filter = RestContextFactory.createContextBuilder(DUMMY_SPEC).buildInjector()
|
||||||
QuerySigner.class);
|
.getInstance(QuerySigner.class);
|
||||||
HttpRequest request = HttpRequest.builder().method("GET").endpoint(
|
HttpRequest request = HttpRequest.builder().method("GET")
|
||||||
URI.create("http://localhost:8080/client/api?command=listZones")).build();
|
.endpoint(URI.create("http://localhost:8080/client/api?command=listZones")).build();
|
||||||
for (int i = 0; i < 2; i++) {
|
for (int i = 0; i < 2; i++) {
|
||||||
request = filter.filter(request);
|
request = filter.filter(request);
|
||||||
assertEquals(
|
assertEquals(
|
||||||
request.getRequestLine(),
|
request.getRequestLine(),
|
||||||
"GET http://localhost:8080/client/api?command=listZones&apiKey=apiKey&signature=2UG8AcnMaozL3BINdjgkJ%2BRzjEY%3D HTTP/1.1");
|
"GET http://localhost:8080/client/api?command=listZones&apiKey=apiKey&signature=2UG8AcnMaozL3BINdjgkJ%2BRzjEY%3D HTTP/1.1");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -58,12 +58,12 @@ public class ParseAsyncJobFromHttpResponseTest {
|
||||||
String input = "{ \"queryasyncjobresultresponse\" : {\"jobid\":860,\"jobstatus\":0,\"jobprocstatus\":0,\"jobresultcode\":0} }";
|
String input = "{ \"queryasyncjobresultresponse\" : {\"jobid\":860,\"jobstatus\":0,\"jobprocstatus\":0,\"jobresultcode\":0} }";
|
||||||
|
|
||||||
AsyncJob<PublicIPAddress> expects = AsyncJob.<PublicIPAddress> builder().id(860).status(0).progress(0)
|
AsyncJob<PublicIPAddress> expects = AsyncJob.<PublicIPAddress> builder().id(860).status(0).progress(0)
|
||||||
.resultCode(0).build();
|
.resultCode(0).build();
|
||||||
|
|
||||||
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
||||||
Payloads.newStringPayload(input)));
|
Payloads.newStringPayload(input)));
|
||||||
|
|
||||||
assertEquals(response, expects);
|
assertEquals(response, expects);
|
||||||
}
|
}
|
||||||
|
@ -72,12 +72,12 @@ public class ParseAsyncJobFromHttpResponseTest {
|
||||||
String input = "{ \"queryasyncjobresultresponse\" : {\"jobid\":1138,\"jobstatus\":1,\"jobprocstatus\":0,\"jobresultcode\":0,\"jobresulttype\":\"object\",\"jobresult\":{\"success\":true}} }";
|
String input = "{ \"queryasyncjobresultresponse\" : {\"jobid\":1138,\"jobstatus\":1,\"jobprocstatus\":0,\"jobresultcode\":0,\"jobresulttype\":\"object\",\"jobresult\":{\"success\":true}} }";
|
||||||
|
|
||||||
AsyncJob<PublicIPAddress> expects = AsyncJob.<PublicIPAddress> builder().id(1138).status(1).progress(0)
|
AsyncJob<PublicIPAddress> expects = AsyncJob.<PublicIPAddress> builder().id(1138).status(1).progress(0)
|
||||||
.resultType("object").resultCode(0).build();
|
.resultType("object").resultCode(0).build();
|
||||||
|
|
||||||
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
||||||
Payloads.newStringPayload(input)));
|
Payloads.newStringPayload(input)));
|
||||||
|
|
||||||
assertEquals(response, expects);
|
assertEquals(response, expects);
|
||||||
}
|
}
|
||||||
|
@ -85,16 +85,19 @@ public class ParseAsyncJobFromHttpResponseTest {
|
||||||
public void testWithErrorSetsResultNullSoToAvoidClassCastExceptions() {
|
public void testWithErrorSetsResultNullSoToAvoidClassCastExceptions() {
|
||||||
String input = "{ \"queryasyncjobresultresponse\" : {\"jobid\":1103,\"jobstatus\":2,\"jobprocstatus\":0,\"jobresultcode\":530,\"jobresulttype\":\"object\",\"jobresult\":{\"errorcode\":530,\"errortext\":\"Internal error executing command, please contact your system administrator\"}} }";
|
String input = "{ \"queryasyncjobresultresponse\" : {\"jobid\":1103,\"jobstatus\":2,\"jobprocstatus\":0,\"jobresultcode\":530,\"jobresulttype\":\"object\",\"jobresult\":{\"errorcode\":530,\"errortext\":\"Internal error executing command, please contact your system administrator\"}} }";
|
||||||
|
|
||||||
AsyncJob<PublicIPAddress> expects = AsyncJob.<PublicIPAddress> builder().id(1103).status(2).progress(0)
|
AsyncJob<PublicIPAddress> expects = AsyncJob
|
||||||
.resultType("object").error(
|
.<PublicIPAddress> builder()
|
||||||
new AsyncJobError(530,
|
.id(1103)
|
||||||
"Internal error executing command, please contact your system administrator"))
|
.status(2)
|
||||||
.resultCode(530).build();
|
.progress(0)
|
||||||
|
.resultType("object")
|
||||||
|
.error(new AsyncJobError(530, "Internal error executing command, please contact your system administrator"))
|
||||||
|
.resultCode(530).build();
|
||||||
|
|
||||||
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
||||||
Payloads.newStringPayload(input)));
|
Payloads.newStringPayload(input)));
|
||||||
|
|
||||||
assertEquals(response, expects);
|
assertEquals(response, expects);
|
||||||
}
|
}
|
||||||
|
@ -103,66 +106,83 @@ public class ParseAsyncJobFromHttpResponseTest {
|
||||||
String input = "{ \"queryasyncjobresultresponse\" : {\"jobid\":860,\"jobstatus\":0,\"jobprocstatus\":0,\"jobresultcode\":0,\"jobresult\":{\"foo\":{\"bar\":1}}}}";
|
String input = "{ \"queryasyncjobresultresponse\" : {\"jobid\":860,\"jobstatus\":0,\"jobprocstatus\":0,\"jobresultcode\":0,\"jobresult\":{\"foo\":{\"bar\":1}}}}";
|
||||||
|
|
||||||
AsyncJob<?> expects = AsyncJob.builder().id(860).status(0).progress(0).resultCode(0).result("{\"bar\":1}")
|
AsyncJob<?> expects = AsyncJob.builder().id(860).status(0).progress(0).resultCode(0).result("{\"bar\":1}")
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
||||||
Payloads.newStringPayload(input)));
|
Payloads.newStringPayload(input)));
|
||||||
|
|
||||||
assertEquals(response, expects);
|
assertEquals(response, expects);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testWithBadResultReturnsMap() {
|
public void testWithBadResultReturnsMap() {
|
||||||
// Not the best result object, but this is an unexpected error case. Cloud.com have verified
|
// Not the best result object, but this is an unexpected error case.
|
||||||
// that this case will not happen. This code is only here to prevent exceptions from being
|
// Cloud.com have verified
|
||||||
|
// that this case will not happen. This code is only here to prevent
|
||||||
|
// exceptions from being
|
||||||
// thrown in case they change their minds.
|
// thrown in case they change their minds.
|
||||||
String input = "{ \"queryasyncjobresultresponse\" : {\"jobid\":860,\"jobstatus\":0,\"jobprocstatus\":0,\"jobresultcode\":0,\"jobresult\":{\"foo\":{\"bar\":1},\"foo2\":{\"bar2\":2}}}}";
|
String input = "{ \"queryasyncjobresultresponse\" : {\"jobid\":860,\"jobstatus\":0,\"jobprocstatus\":0,\"jobresultcode\":0,\"jobresult\":{\"foo\":{\"bar\":1},\"foo2\":{\"bar2\":2}}}}";
|
||||||
|
|
||||||
AsyncJob<?> expects = AsyncJob.builder().id(860).status(0).progress(0).resultCode(0).result(
|
AsyncJob<?> expects = AsyncJob.builder().id(860).status(0).progress(0).resultCode(0)
|
||||||
ImmutableMap.of("foo", new JsonBall("{\"bar\":1}"), "foo2", new JsonBall("{\"bar2\":2}"))).build();
|
.result(ImmutableMap.of("foo", new JsonBall("{\"bar\":1}"), "foo2", new JsonBall("{\"bar2\":2}"))).build();
|
||||||
|
|
||||||
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
||||||
Payloads.newStringPayload(input)));
|
Payloads.newStringPayload(input)));
|
||||||
|
|
||||||
assertEquals(response, expects);
|
assertEquals(response, expects);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testPublicIPAddress() {
|
public void testPublicIPAddress() {
|
||||||
InputStream is = getClass().getResourceAsStream("/queryasyncjobresultresponse-ipaddress.json");
|
InputStream is = getClass().getResourceAsStream("/queryasyncjobresultresponse-ipaddress.json");
|
||||||
AsyncJob<PublicIPAddress> expects = AsyncJob.<PublicIPAddress> builder().id(860).status(1).progress(0)
|
AsyncJob<PublicIPAddress> expects = AsyncJob
|
||||||
.resultType("object").resultCode(0).result(
|
.<PublicIPAddress> builder()
|
||||||
PublicIPAddress.builder().id(6).IPAddress("72.52.126.35").allocated(
|
.id(860)
|
||||||
new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-02-23T20:15:01-0800"))
|
.status(1)
|
||||||
.zoneId(1).zoneName("San Jose 1").isSourceNAT(false).account("adrian").domainId(1)
|
.progress(0)
|
||||||
.domain("ROOT").usesVirtualNetwork(true).isStaticNAT(false).associatedNetworkId(204)
|
.resultType("object")
|
||||||
.networkId(200).state(PublicIPAddress.State.ALLOCATING).build()
|
.resultCode(0)
|
||||||
|
.result(
|
||||||
|
PublicIPAddress
|
||||||
|
.builder()
|
||||||
|
.id(6)
|
||||||
|
.IPAddress("72.52.126.35")
|
||||||
|
.allocated(
|
||||||
|
new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-02-23T20:15:01-0800"))
|
||||||
|
.zoneId(1).zoneName("San Jose 1").isSourceNAT(false).account("adrian").domainId(1)
|
||||||
|
.domain("ROOT").usesVirtualNetwork(true).isStaticNAT(false).associatedNetworkId(204)
|
||||||
|
.networkId(200).state(PublicIPAddress.State.ALLOCATING).build()
|
||||||
|
|
||||||
).build();
|
).build();
|
||||||
|
|
||||||
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
AsyncJob<PublicIPAddress> response = (AsyncJob<PublicIPAddress>) parser.apply(new HttpResponse(200, "ok",
|
||||||
Payloads.newInputStreamPayload(is)));
|
Payloads.newInputStreamPayload(is)));
|
||||||
|
|
||||||
assertEquals(response, expects);
|
assertEquals(response, expects);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testIPForwardingRule() {
|
public void testIPForwardingRule() {
|
||||||
InputStream is = getClass().getResourceAsStream("/queryasyncjobresultresponse-ipforwardingrule.json");
|
InputStream is = getClass().getResourceAsStream("/queryasyncjobresultresponse-ipforwardingrule.json");
|
||||||
AsyncJob<IPForwardingRule> expects = AsyncJob.<IPForwardingRule> builder().id(1133).status(1).progress(0)
|
AsyncJob<IPForwardingRule> expects = AsyncJob
|
||||||
.resultType("object").resultCode(0).result(
|
.<IPForwardingRule> builder()
|
||||||
IPForwardingRule.builder().id(109).protocol("tcp").virtualMachineId(226).virtualMachineName(
|
.id(1133)
|
||||||
"i-3-226-VM").IPAddressId(36).IPAddress("72.52.126.65").startPort(22).endPort(22)
|
.status(1)
|
||||||
.state("Active").build()
|
.progress(0)
|
||||||
).build();
|
.resultType("object")
|
||||||
|
.resultCode(0)
|
||||||
|
.result(
|
||||||
|
IPForwardingRule.builder().id(109).protocol("tcp").virtualMachineId(226)
|
||||||
|
.virtualMachineName("i-3-226-VM").IPAddressId(36).IPAddress("72.52.126.65").startPort(22)
|
||||||
|
.endPort(22).state("Active").build()).build();
|
||||||
|
|
||||||
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
ParseAsyncJobFromHttpResponse parser = i.getInstance(ParseAsyncJobFromHttpResponse.class);
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
AsyncJob<IPForwardingRule> response = (AsyncJob<IPForwardingRule>) parser.apply(new HttpResponse(200, "ok",
|
AsyncJob<IPForwardingRule> response = (AsyncJob<IPForwardingRule>) parser.apply(new HttpResponse(200, "ok",
|
||||||
Payloads.newInputStreamPayload(is)));
|
Payloads.newInputStreamPayload(is)));
|
||||||
|
|
||||||
assertEquals(response, expects);
|
assertEquals(response, expects);
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,7 +48,7 @@ public class ReuseOrAssociateNewPublicIPAddressTest {
|
||||||
long zoneId = 100l;
|
long zoneId = 100l;
|
||||||
// note that it is associated network, not networkId
|
// note that it is associated network, not networkId
|
||||||
PublicIPAddress address = PublicIPAddress.builder().id(200).state(PublicIPAddress.State.ALLOCATED)
|
PublicIPAddress address = PublicIPAddress.builder().id(200).state(PublicIPAddress.State.ALLOCATED)
|
||||||
.associatedNetworkId(networkId).zoneId(zoneId).build();
|
.associatedNetworkId(networkId).zoneId(zoneId).build();
|
||||||
|
|
||||||
public void testReuseWorks() throws SecurityException, NoSuchMethodException {
|
public void testReuseWorks() throws SecurityException, NoSuchMethodException {
|
||||||
|
|
||||||
|
@ -60,15 +60,16 @@ public class ReuseOrAssociateNewPublicIPAddressTest {
|
||||||
|
|
||||||
// an address is available
|
// an address is available
|
||||||
expect(addressClient.listPublicIPAddresses(allocatedOnly(true).networkId(networkId))).andReturn(
|
expect(addressClient.listPublicIPAddresses(allocatedOnly(true).networkId(networkId))).andReturn(
|
||||||
ImmutableSet.<PublicIPAddress> of(address));
|
ImmutableSet.<PublicIPAddress> of(address));
|
||||||
|
|
||||||
// replay mocks
|
// replay mocks
|
||||||
replay(client);
|
replay(client);
|
||||||
replay(addressClient);
|
replay(addressClient);
|
||||||
|
|
||||||
// run
|
// run
|
||||||
assertEquals(new ReuseOrAssociateNewPublicIPAddress(client, jobComplete).apply(Network.builder().id(networkId)
|
assertEquals(
|
||||||
.zoneId(zoneId).build()), address);
|
new ReuseOrAssociateNewPublicIPAddress(client, jobComplete).apply(Network.builder().id(networkId)
|
||||||
|
.zoneId(zoneId).build()), address);
|
||||||
|
|
||||||
// verify mocks
|
// verify mocks
|
||||||
verify(client);
|
verify(client);
|
||||||
|
@ -88,7 +89,7 @@ public class ReuseOrAssociateNewPublicIPAddressTest {
|
||||||
|
|
||||||
// no ip addresses available
|
// no ip addresses available
|
||||||
expect(addressClient.listPublicIPAddresses(allocatedOnly(true).networkId(networkId))).andReturn(
|
expect(addressClient.listPublicIPAddresses(allocatedOnly(true).networkId(networkId))).andReturn(
|
||||||
ImmutableSet.<PublicIPAddress> of());
|
ImmutableSet.<PublicIPAddress> of());
|
||||||
|
|
||||||
AsyncCreateResponse job = new AsyncCreateResponse(1, 2);
|
AsyncCreateResponse job = new AsyncCreateResponse(1, 2);
|
||||||
// make sure we created the job relating to a new ip
|
// make sure we created the job relating to a new ip
|
||||||
|
@ -105,8 +106,9 @@ public class ReuseOrAssociateNewPublicIPAddressTest {
|
||||||
replay(jobClient);
|
replay(jobClient);
|
||||||
|
|
||||||
// run
|
// run
|
||||||
assertEquals(new ReuseOrAssociateNewPublicIPAddress(client, jobComplete).apply(Network.builder().id(networkId)
|
assertEquals(
|
||||||
.zoneId(zoneId).build()), address);
|
new ReuseOrAssociateNewPublicIPAddress(client, jobComplete).apply(Network.builder().id(networkId)
|
||||||
|
.zoneId(zoneId).build()), address);
|
||||||
|
|
||||||
// verify mocks
|
// verify mocks
|
||||||
verify(client);
|
verify(client);
|
||||||
|
@ -128,13 +130,14 @@ public class ReuseOrAssociateNewPublicIPAddressTest {
|
||||||
|
|
||||||
// no ip addresses available
|
// no ip addresses available
|
||||||
expect(addressClient.listPublicIPAddresses(allocatedOnly(true).networkId(networkId))).andReturn(
|
expect(addressClient.listPublicIPAddresses(allocatedOnly(true).networkId(networkId))).andReturn(
|
||||||
ImmutableSet.<PublicIPAddress> of());
|
ImmutableSet.<PublicIPAddress> of());
|
||||||
|
|
||||||
AsyncCreateResponse job = new AsyncCreateResponse(1, 2);
|
AsyncCreateResponse job = new AsyncCreateResponse(1, 2);
|
||||||
// make sure we created the job relating to a new ip
|
// make sure we created the job relating to a new ip
|
||||||
expect(addressClient.associateIPAddressInZone(zoneId, networkId(networkId))).andReturn(job);
|
expect(addressClient.associateIPAddressInZone(zoneId, networkId(networkId))).andReturn(job);
|
||||||
|
|
||||||
// the alwaysfalse predicate above should blow up with IllegalStateException
|
// the alwaysfalse predicate above should blow up with
|
||||||
|
// IllegalStateException
|
||||||
|
|
||||||
// replay mocks
|
// replay mocks
|
||||||
replay(client);
|
replay(client);
|
||||||
|
@ -142,7 +145,7 @@ public class ReuseOrAssociateNewPublicIPAddressTest {
|
||||||
|
|
||||||
// run
|
// run
|
||||||
new ReuseOrAssociateNewPublicIPAddress(client, jobComplete).apply(Network.builder().id(networkId).zoneId(zoneId)
|
new ReuseOrAssociateNewPublicIPAddress(client, jobComplete).apply(Network.builder().id(networkId).zoneId(zoneId)
|
||||||
.build());
|
.build());
|
||||||
|
|
||||||
// verify mocks
|
// verify mocks
|
||||||
verify(client);
|
verify(client);
|
||||||
|
|
|
@ -58,7 +58,6 @@ public class ListAsyncJobsOptionsTest {
|
||||||
assertEquals(ImmutableList.of("6"), options.buildQueryParameters().get("domainid"));
|
assertEquals(ImmutableList.of("6"), options.buildQueryParameters().get("domainid"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void testStartDateStatic() {
|
public void testStartDateStatic() {
|
||||||
ListAsyncJobsOptions options = startDate(new Date(100000));
|
ListAsyncJobsOptions options = startDate(new Date(100000));
|
||||||
assertEquals(ImmutableList.of("1970-01-01T00:01:40Z"), options.buildQueryParameters().get("startdate"));
|
assertEquals(ImmutableList.of("1970-01-01T00:01:40Z"), options.buildQueryParameters().get("startdate"));
|
||||||
|
|
|
@ -18,10 +18,10 @@
|
||||||
*/
|
*/
|
||||||
package org.jclouds.cloudstack.options;
|
package org.jclouds.cloudstack.options;
|
||||||
|
|
||||||
|
import static org.jclouds.cloudstack.options.ListIPForwardingRulesOptions.Builder.IPAddressId;
|
||||||
import static org.jclouds.cloudstack.options.ListIPForwardingRulesOptions.Builder.accountInDomain;
|
import static org.jclouds.cloudstack.options.ListIPForwardingRulesOptions.Builder.accountInDomain;
|
||||||
import static org.jclouds.cloudstack.options.ListIPForwardingRulesOptions.Builder.domainId;
|
import static org.jclouds.cloudstack.options.ListIPForwardingRulesOptions.Builder.domainId;
|
||||||
import static org.jclouds.cloudstack.options.ListIPForwardingRulesOptions.Builder.id;
|
import static org.jclouds.cloudstack.options.ListIPForwardingRulesOptions.Builder.id;
|
||||||
import static org.jclouds.cloudstack.options.ListIPForwardingRulesOptions.Builder.IPAddressId;
|
|
||||||
import static org.jclouds.cloudstack.options.ListIPForwardingRulesOptions.Builder.virtualMachineId;
|
import static org.jclouds.cloudstack.options.ListIPForwardingRulesOptions.Builder.virtualMachineId;
|
||||||
import static org.testng.Assert.assertEquals;
|
import static org.testng.Assert.assertEquals;
|
||||||
|
|
||||||
|
|
|
@ -18,13 +18,13 @@
|
||||||
*/
|
*/
|
||||||
package org.jclouds.cloudstack.options;
|
package org.jclouds.cloudstack.options;
|
||||||
|
|
||||||
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.accountInDomain;
|
|
||||||
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.domainId;
|
|
||||||
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.IPAddress;
|
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.IPAddress;
|
||||||
|
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.VLANId;
|
||||||
|
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.accountInDomain;
|
||||||
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.allocatedOnly;
|
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.allocatedOnly;
|
||||||
|
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.domainId;
|
||||||
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.id;
|
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.id;
|
||||||
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.networkId;
|
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.networkId;
|
||||||
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.VLANId;
|
|
||||||
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.usesVirtualNetwork;
|
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.usesVirtualNetwork;
|
||||||
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.zoneId;
|
import static org.jclouds.cloudstack.options.ListPublicIPAddressesOptions.Builder.zoneId;
|
||||||
import static org.testng.Assert.assertEquals;
|
import static org.testng.Assert.assertEquals;
|
||||||
|
|
|
@ -41,7 +41,7 @@ import com.google.inject.Injector;
|
||||||
*/
|
*/
|
||||||
@Test(groups = "unit")
|
@Test(groups = "unit")
|
||||||
public class ListAccountsResponseTest extends BaseSetParserTest<Account> {
|
public class ListAccountsResponseTest extends BaseSetParserTest<Account> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Injector injector() {
|
protected Injector injector() {
|
||||||
return Guice.createInjector(new CloudStackParserModule(), new GsonModule() {
|
return Guice.createInjector(new CloudStackParserModule(), new GsonModule() {
|
||||||
|
@ -93,20 +93,11 @@ public class ListAccountsResponseTest extends BaseSetParserTest<Account> {
|
||||||
.VMsRunning(1)
|
.VMsRunning(1)
|
||||||
.state(State.ENABLED)
|
.state(State.ENABLED)
|
||||||
.users(
|
.users(
|
||||||
ImmutableSet.of(User.builder()
|
ImmutableSet.of(User.builder().id(505).name("jclouds").firstName("Adrian").lastName("Cole")
|
||||||
.id(505)
|
.email("adrian@jclouds.org")
|
||||||
.name("jclouds")
|
.created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-04-19T01:57:24+0000"))
|
||||||
.firstName("Adrian")
|
.state("enabled").account("jclouds").accountType(Type.USER).domainId(457)
|
||||||
.lastName("Cole")
|
.domain("AA000062-jclouds-dev").apiKey("APIKEY").secretKey("SECRETKEY").build())).build());
|
||||||
.email("adrian@jclouds.org")
|
|
||||||
.created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-04-19T01:57:24+0000"))
|
|
||||||
.state("enabled")
|
|
||||||
.account("jclouds")
|
|
||||||
.accountType(Type.USER)
|
|
||||||
.domainId(457)
|
|
||||||
.domain("AA000062-jclouds-dev")
|
|
||||||
.apiKey("APIKEY")
|
|
||||||
.secretKey("SECRETKEY").build())).build());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,9 +43,9 @@ public class ListOSCategoriesResponseTest extends BaseItemParserTest<Map<Long, S
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<Long, String> expected() {
|
public Map<Long, String> expected() {
|
||||||
return ImmutableMap.<Long, String> builder().put(1l, "CentOS").put(2l, "Debian").put(3l, "Oracle").put(4l,
|
return ImmutableMap.<Long, String> builder().put(1l, "CentOS").put(2l, "Debian").put(3l, "Oracle")
|
||||||
"RedHat").put(5l, "SUSE").put(6l, "Windows").put(7l, "Other").put(8l, "Novel").put(9l, "Unix").put(10l,
|
.put(4l, "RedHat").put(5l, "SUSE").put(6l, "Windows").put(7l, "Other").put(8l, "Novel").put(9l, "Unix")
|
||||||
"Ubuntu").build();
|
.put(10l, "Ubuntu").build();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -33,7 +33,7 @@ import com.google.common.collect.ImmutableSet;
|
||||||
*/
|
*/
|
||||||
@Test(groups = "unit")
|
@Test(groups = "unit")
|
||||||
public class ListOSTypesResponseTest extends BaseSetParserTest<OSType> {
|
public class ListOSTypesResponseTest extends BaseSetParserTest<OSType> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String resource() {
|
public String resource() {
|
||||||
return "/listostypesresponse.json";
|
return "/listostypesresponse.json";
|
||||||
|
@ -42,189 +42,157 @@ public class ListOSTypesResponseTest extends BaseSetParserTest<OSType> {
|
||||||
@Override
|
@Override
|
||||||
@SelectJson("ostype")
|
@SelectJson("ostype")
|
||||||
public Set<OSType> expected() {
|
public Set<OSType> expected() {
|
||||||
return ImmutableSet.<OSType> builder().add(
|
return ImmutableSet
|
||||||
OSType.builder().id(69).OSCategoryId(7).description("Asianux 3(32-bit)").build()).add(
|
.<OSType> builder()
|
||||||
OSType.builder().id(70).OSCategoryId(7).description("Asianux 3(64-bit)").build()).add(
|
.add(OSType.builder().id(69).OSCategoryId(7).description("Asianux 3(32-bit)").build())
|
||||||
OSType.builder().id(1).OSCategoryId(1).description("CentOS 4.5 (32-bit)").build()).add(
|
.add(OSType.builder().id(70).OSCategoryId(7).description("Asianux 3(64-bit)").build())
|
||||||
OSType.builder().id(2).OSCategoryId(1).description("CentOS 4.6 (32-bit)").build()).add(
|
.add(OSType.builder().id(1).OSCategoryId(1).description("CentOS 4.5 (32-bit)").build())
|
||||||
OSType.builder().id(3).OSCategoryId(1).description("CentOS 4.7 (32-bit)").build()).add(
|
.add(OSType.builder().id(2).OSCategoryId(1).description("CentOS 4.6 (32-bit)").build())
|
||||||
OSType.builder().id(4).OSCategoryId(1).description("CentOS 4.8 (32-bit)").build()).add(
|
.add(OSType.builder().id(3).OSCategoryId(1).description("CentOS 4.7 (32-bit)").build())
|
||||||
OSType.builder().id(5).OSCategoryId(1).description("CentOS 5.0 (32-bit)").build()).add(
|
.add(OSType.builder().id(4).OSCategoryId(1).description("CentOS 4.8 (32-bit)").build())
|
||||||
OSType.builder().id(6).OSCategoryId(1).description("CentOS 5.0 (64-bit)").build()).add(
|
.add(OSType.builder().id(5).OSCategoryId(1).description("CentOS 5.0 (32-bit)").build())
|
||||||
OSType.builder().id(7).OSCategoryId(1).description("CentOS 5.1 (32-bit)").build()).add(
|
.add(OSType.builder().id(6).OSCategoryId(1).description("CentOS 5.0 (64-bit)").build())
|
||||||
OSType.builder().id(8).OSCategoryId(1).description("CentOS 5.1 (64-bit)").build()).add(
|
.add(OSType.builder().id(7).OSCategoryId(1).description("CentOS 5.1 (32-bit)").build())
|
||||||
OSType.builder().id(9).OSCategoryId(1).description("CentOS 5.2 (32-bit)").build()).add(
|
.add(OSType.builder().id(8).OSCategoryId(1).description("CentOS 5.1 (64-bit)").build())
|
||||||
OSType.builder().id(10).OSCategoryId(1).description("CentOS 5.2 (64-bit)").build()).add(
|
.add(OSType.builder().id(9).OSCategoryId(1).description("CentOS 5.2 (32-bit)").build())
|
||||||
OSType.builder().id(11).OSCategoryId(1).description("CentOS 5.3 (32-bit)").build()).add(
|
.add(OSType.builder().id(10).OSCategoryId(1).description("CentOS 5.2 (64-bit)").build())
|
||||||
OSType.builder().id(12).OSCategoryId(1).description("CentOS 5.3 (64-bit)").build()).add(
|
.add(OSType.builder().id(11).OSCategoryId(1).description("CentOS 5.3 (32-bit)").build())
|
||||||
OSType.builder().id(13).OSCategoryId(1).description("CentOS 5.4 (32-bit)").build()).add(
|
.add(OSType.builder().id(12).OSCategoryId(1).description("CentOS 5.3 (64-bit)").build())
|
||||||
OSType.builder().id(14).OSCategoryId(1).description("CentOS 5.4 (64-bit)").build()).add(
|
.add(OSType.builder().id(13).OSCategoryId(1).description("CentOS 5.4 (32-bit)").build())
|
||||||
OSType.builder().id(111).OSCategoryId(1).description("CentOS 5.5 (32-bit)").build()).add(
|
.add(OSType.builder().id(14).OSCategoryId(1).description("CentOS 5.4 (64-bit)").build())
|
||||||
OSType.builder().id(112).OSCategoryId(1).description("CentOS 5.5 (64-bit)").build()).add(
|
.add(OSType.builder().id(111).OSCategoryId(1).description("CentOS 5.5 (32-bit)").build())
|
||||||
OSType.builder().id(73).OSCategoryId(2).description("Debian GNU/Linux 4(32-bit)").build()).add(
|
.add(OSType.builder().id(112).OSCategoryId(1).description("CentOS 5.5 (64-bit)").build())
|
||||||
OSType.builder().id(74).OSCategoryId(2).description("Debian GNU/Linux 4(64-bit)").build()).add(
|
.add(OSType.builder().id(73).OSCategoryId(2).description("Debian GNU/Linux 4(32-bit)").build())
|
||||||
OSType.builder().id(72).OSCategoryId(2).description("Debian GNU/Linux 5(64-bit)").build()).add(
|
.add(OSType.builder().id(74).OSCategoryId(2).description("Debian GNU/Linux 4(64-bit)").build())
|
||||||
OSType.builder().id(15).OSCategoryId(2).description("Debian GNU/Linux 5.0 (32-bit)").build()).add(
|
.add(OSType.builder().id(72).OSCategoryId(2).description("Debian GNU/Linux 5(64-bit)").build())
|
||||||
OSType.builder().id(132).OSCategoryId(2).description("Debian GNU/Linux 6(32-bit)").build()).add(
|
.add(OSType.builder().id(15).OSCategoryId(2).description("Debian GNU/Linux 5.0 (32-bit)").build())
|
||||||
OSType.builder().id(133).OSCategoryId(2).description("Debian GNU/Linux 6(64-bit)").build()).add(
|
.add(OSType.builder().id(132).OSCategoryId(2).description("Debian GNU/Linux 6(32-bit)").build())
|
||||||
OSType.builder().id(102).OSCategoryId(6).description("DOS").build()).add(
|
.add(OSType.builder().id(133).OSCategoryId(2).description("Debian GNU/Linux 6(64-bit)").build())
|
||||||
OSType.builder().id(118).OSCategoryId(4).description("Fedora 10").build()).add(
|
.add(OSType.builder().id(102).OSCategoryId(6).description("DOS").build())
|
||||||
OSType.builder().id(117).OSCategoryId(4).description("Fedora 11").build()).add(
|
.add(OSType.builder().id(118).OSCategoryId(4).description("Fedora 10").build())
|
||||||
OSType.builder().id(116).OSCategoryId(4).description("Fedora 12").build()).add(
|
.add(OSType.builder().id(117).OSCategoryId(4).description("Fedora 11").build())
|
||||||
OSType.builder().id(115).OSCategoryId(4).description("Fedora 13").build()).add(
|
.add(OSType.builder().id(116).OSCategoryId(4).description("Fedora 12").build())
|
||||||
OSType.builder().id(120).OSCategoryId(4).description("Fedora 8").build()).add(
|
.add(OSType.builder().id(115).OSCategoryId(4).description("Fedora 13").build())
|
||||||
OSType.builder().id(119).OSCategoryId(4).description("Fedora 9").build()).add(
|
.add(OSType.builder().id(120).OSCategoryId(4).description("Fedora 8").build())
|
||||||
OSType.builder().id(83).OSCategoryId(9).description("FreeBSD (32-bit)").build()).add(
|
.add(OSType.builder().id(119).OSCategoryId(4).description("Fedora 9").build())
|
||||||
OSType.builder().id(84).OSCategoryId(9).description("FreeBSD (64-bit)").build()).add(
|
.add(OSType.builder().id(83).OSCategoryId(9).description("FreeBSD (32-bit)").build())
|
||||||
OSType.builder().id(92).OSCategoryId(6).description("Microsoft Small Bussiness Server 2003").build())
|
.add(OSType.builder().id(84).OSCategoryId(9).description("FreeBSD (64-bit)").build())
|
||||||
.add(OSType.builder().id(78).OSCategoryId(8).description("Novell Netware 5.1").build()).add(
|
.add(OSType.builder().id(92).OSCategoryId(6).description("Microsoft Small Bussiness Server 2003").build())
|
||||||
OSType.builder().id(77).OSCategoryId(8).description("Novell Netware 6.x").build()).add(
|
.add(OSType.builder().id(78).OSCategoryId(8).description("Novell Netware 5.1").build())
|
||||||
OSType.builder().id(68).OSCategoryId(7).description("Open Enterprise Server").build()).add(
|
.add(OSType.builder().id(77).OSCategoryId(8).description("Novell Netware 6.x").build())
|
||||||
OSType.builder().id(16).OSCategoryId(3).description("Oracle Enterprise Linux 5.0 (32-bit)")
|
.add(OSType.builder().id(68).OSCategoryId(7).description("Open Enterprise Server").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(16).OSCategoryId(3).description("Oracle Enterprise Linux 5.0 (32-bit)").build())
|
||||||
OSType.builder().id(17).OSCategoryId(3).description("Oracle Enterprise Linux 5.0 (64-bit)")
|
.add(OSType.builder().id(17).OSCategoryId(3).description("Oracle Enterprise Linux 5.0 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(18).OSCategoryId(3).description("Oracle Enterprise Linux 5.1 (32-bit)").build())
|
||||||
OSType.builder().id(18).OSCategoryId(3).description("Oracle Enterprise Linux 5.1 (32-bit)")
|
.add(OSType.builder().id(19).OSCategoryId(3).description("Oracle Enterprise Linux 5.1 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(20).OSCategoryId(3).description("Oracle Enterprise Linux 5.2 (32-bit)").build())
|
||||||
OSType.builder().id(19).OSCategoryId(3).description("Oracle Enterprise Linux 5.1 (64-bit)")
|
.add(OSType.builder().id(21).OSCategoryId(3).description("Oracle Enterprise Linux 5.2 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(22).OSCategoryId(3).description("Oracle Enterprise Linux 5.3 (32-bit)").build())
|
||||||
OSType.builder().id(20).OSCategoryId(3).description("Oracle Enterprise Linux 5.2 (32-bit)")
|
.add(OSType.builder().id(23).OSCategoryId(3).description("Oracle Enterprise Linux 5.3 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(24).OSCategoryId(3).description("Oracle Enterprise Linux 5.4 (32-bit)").build())
|
||||||
OSType.builder().id(21).OSCategoryId(3).description("Oracle Enterprise Linux 5.2 (64-bit)")
|
.add(OSType.builder().id(25).OSCategoryId(3).description("Oracle Enterprise Linux 5.4 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(134).OSCategoryId(3).description("Oracle Enterprise Linux 5.5 (32-bit)").build())
|
||||||
OSType.builder().id(22).OSCategoryId(3).description("Oracle Enterprise Linux 5.3 (32-bit)")
|
.add(OSType.builder().id(135).OSCategoryId(3).description("Oracle Enterprise Linux 5.5 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(104).OSCategoryId(7).description("OS/2").build())
|
||||||
OSType.builder().id(23).OSCategoryId(3).description("Oracle Enterprise Linux 5.3 (64-bit)")
|
.add(OSType.builder().id(60).OSCategoryId(7).description("Other (32-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(103).OSCategoryId(7).description("Other (64-bit)").build())
|
||||||
OSType.builder().id(24).OSCategoryId(3).description("Oracle Enterprise Linux 5.4 (32-bit)")
|
.add(OSType.builder().id(75).OSCategoryId(7).description("Other 2.6x Linux (32-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(76).OSCategoryId(7).description("Other 2.6x Linux (64-bit)").build())
|
||||||
OSType.builder().id(25).OSCategoryId(3).description("Oracle Enterprise Linux 5.4 (64-bit)")
|
.add(OSType.builder().id(98).OSCategoryId(7).description("Other Linux (32-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(99).OSCategoryId(7).description("Other Linux (64-bit)").build())
|
||||||
OSType.builder().id(134).OSCategoryId(3).description("Oracle Enterprise Linux 5.5 (32-bit)")
|
.add(OSType.builder().id(59).OSCategoryId(10).description("Other Ubuntu (32-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(100).OSCategoryId(10).description("Other Ubuntu (64-bit)").build())
|
||||||
OSType.builder().id(135).OSCategoryId(3).description("Oracle Enterprise Linux 5.5 (64-bit)")
|
.add(OSType.builder().id(131).OSCategoryId(10).description("Red Hat Enterprise Linux 2").build())
|
||||||
.build()).add(OSType.builder().id(104).OSCategoryId(7).description("OS/2").build())
|
.add(OSType.builder().id(66).OSCategoryId(4).description("Red Hat Enterprise Linux 3(32-bit)").build())
|
||||||
.add(OSType.builder().id(60).OSCategoryId(7).description("Other (32-bit)").build()).add(
|
.add(OSType.builder().id(67).OSCategoryId(4).description("Red Hat Enterprise Linux 3(64-bit)").build())
|
||||||
OSType.builder().id(103).OSCategoryId(7).description("Other (64-bit)").build()).add(
|
.add(OSType.builder().id(106).OSCategoryId(4).description("Red Hat Enterprise Linux 4(64-bit)").build())
|
||||||
OSType.builder().id(75).OSCategoryId(7).description("Other 2.6x Linux (32-bit)").build()).add(
|
.add(OSType.builder().id(26).OSCategoryId(4).description("Red Hat Enterprise Linux 4.5 (32-bit)").build())
|
||||||
OSType.builder().id(76).OSCategoryId(7).description("Other 2.6x Linux (64-bit)").build()).add(
|
.add(OSType.builder().id(27).OSCategoryId(4).description("Red Hat Enterprise Linux 4.6 (32-bit)").build())
|
||||||
OSType.builder().id(98).OSCategoryId(7).description("Other Linux (32-bit)").build()).add(
|
.add(OSType.builder().id(28).OSCategoryId(4).description("Red Hat Enterprise Linux 4.7 (32-bit)").build())
|
||||||
OSType.builder().id(99).OSCategoryId(7).description("Other Linux (64-bit)").build()).add(
|
.add(OSType.builder().id(29).OSCategoryId(4).description("Red Hat Enterprise Linux 4.8 (32-bit)").build())
|
||||||
OSType.builder().id(59).OSCategoryId(10).description("Other Ubuntu (32-bit)").build()).add(
|
.add(OSType.builder().id(30).OSCategoryId(4).description("Red Hat Enterprise Linux 5.0 (32-bit)").build())
|
||||||
OSType.builder().id(100).OSCategoryId(10).description("Other Ubuntu (64-bit)").build()).add(
|
.add(OSType.builder().id(31).OSCategoryId(4).description("Red Hat Enterprise Linux 5.0 (64-bit)").build())
|
||||||
OSType.builder().id(131).OSCategoryId(10).description("Red Hat Enterprise Linux 2").build())
|
.add(OSType.builder().id(32).OSCategoryId(4).description("Red Hat Enterprise Linux 5.1 (32-bit)").build())
|
||||||
.add(OSType.builder().id(66).OSCategoryId(4).description("Red Hat Enterprise Linux 3(32-bit)").build())
|
.add(OSType.builder().id(33).OSCategoryId(4).description("Red Hat Enterprise Linux 5.1 (64-bit)").build())
|
||||||
.add(OSType.builder().id(67).OSCategoryId(4).description("Red Hat Enterprise Linux 3(64-bit)").build())
|
.add(OSType.builder().id(34).OSCategoryId(4).description("Red Hat Enterprise Linux 5.2 (32-bit)").build())
|
||||||
.add(OSType.builder().id(106).OSCategoryId(4).description("Red Hat Enterprise Linux 4(64-bit)").build())
|
.add(OSType.builder().id(35).OSCategoryId(4).description("Red Hat Enterprise Linux 5.2 (64-bit)").build())
|
||||||
.add(
|
.add(OSType.builder().id(36).OSCategoryId(4).description("Red Hat Enterprise Linux 5.3 (32-bit)").build())
|
||||||
OSType.builder().id(26).OSCategoryId(4).description("Red Hat Enterprise Linux 4.5 (32-bit)")
|
.add(OSType.builder().id(37).OSCategoryId(4).description("Red Hat Enterprise Linux 5.3 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(38).OSCategoryId(4).description("Red Hat Enterprise Linux 5.4 (32-bit)").build())
|
||||||
OSType.builder().id(27).OSCategoryId(4).description("Red Hat Enterprise Linux 4.6 (32-bit)")
|
.add(OSType.builder().id(39).OSCategoryId(4).description("Red Hat Enterprise Linux 5.4 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(113).OSCategoryId(4).description("Red Hat Enterprise Linux 5.5 (32-bit)").build())
|
||||||
OSType.builder().id(28).OSCategoryId(4).description("Red Hat Enterprise Linux 4.7 (32-bit)")
|
.add(OSType.builder().id(114).OSCategoryId(4).description("Red Hat Enterprise Linux 5.5 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(136).OSCategoryId(4).description("Red Hat Enterprise Linux 6.0 (32-bit)").build())
|
||||||
OSType.builder().id(29).OSCategoryId(4).description("Red Hat Enterprise Linux 4.8 (32-bit)")
|
.add(OSType.builder().id(137).OSCategoryId(4).description("Red Hat Enterprise Linux 6.0 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(85).OSCategoryId(9).description("SCO OpenServer 5").build())
|
||||||
OSType.builder().id(30).OSCategoryId(4).description("Red Hat Enterprise Linux 5.0 (32-bit)")
|
.add(OSType.builder().id(86).OSCategoryId(9).description("SCO UnixWare 7").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(79).OSCategoryId(9).description("Sun Solaris 10(32-bit)").build())
|
||||||
OSType.builder().id(31).OSCategoryId(4).description("Red Hat Enterprise Linux 5.0 (64-bit)")
|
.add(OSType.builder().id(80).OSCategoryId(9).description("Sun Solaris 10(64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(82).OSCategoryId(9).description("Sun Solaris 8(Experimental)").build())
|
||||||
OSType.builder().id(32).OSCategoryId(4).description("Red Hat Enterprise Linux 5.1 (32-bit)")
|
.add(OSType.builder().id(81).OSCategoryId(9).description("Sun Solaris 9(Experimental)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(109).OSCategoryId(5).description("SUSE Linux Enterprise 10(32-bit)").build())
|
||||||
OSType.builder().id(33).OSCategoryId(4).description("Red Hat Enterprise Linux 5.1 (64-bit)")
|
.add(OSType.builder().id(110).OSCategoryId(5).description("SUSE Linux Enterprise 10(64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(96).OSCategoryId(5).description("SUSE Linux Enterprise 8(32-bit)").build())
|
||||||
OSType.builder().id(34).OSCategoryId(4).description("Red Hat Enterprise Linux 5.2 (32-bit)")
|
.add(OSType.builder().id(97).OSCategoryId(5).description("SUSE Linux Enterprise 8(64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(107).OSCategoryId(5).description("SUSE Linux Enterprise 9(32-bit)").build())
|
||||||
OSType.builder().id(35).OSCategoryId(4).description("Red Hat Enterprise Linux 5.2 (64-bit)")
|
.add(OSType.builder().id(108).OSCategoryId(5).description("SUSE Linux Enterprise 9(64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(41).OSCategoryId(5).description("SUSE Linux Enterprise Server 10 SP1 (32-bit)")
|
||||||
OSType.builder().id(36).OSCategoryId(4).description("Red Hat Enterprise Linux 5.3 (32-bit)")
|
.build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(42).OSCategoryId(5).description("SUSE Linux Enterprise Server 10 SP1 (64-bit)")
|
||||||
OSType.builder().id(37).OSCategoryId(4).description("Red Hat Enterprise Linux 5.3 (64-bit)")
|
.build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(43).OSCategoryId(5).description("SUSE Linux Enterprise Server 10 SP2 (32-bit)")
|
||||||
OSType.builder().id(38).OSCategoryId(4).description("Red Hat Enterprise Linux 5.4 (32-bit)")
|
.build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(44).OSCategoryId(5).description("SUSE Linux Enterprise Server 10 SP2 (64-bit)")
|
||||||
OSType.builder().id(39).OSCategoryId(4).description("Red Hat Enterprise Linux 5.4 (64-bit)")
|
.build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(45).OSCategoryId(5).description("SUSE Linux Enterprise Server 10 SP3 (64-bit)")
|
||||||
OSType.builder().id(113).OSCategoryId(4).description("Red Hat Enterprise Linux 5.5 (32-bit)")
|
.build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(46).OSCategoryId(5).description("SUSE Linux Enterprise Server 11 (32-bit)")
|
||||||
OSType.builder().id(114).OSCategoryId(4).description("Red Hat Enterprise Linux 5.5 (64-bit)")
|
.build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(47).OSCategoryId(5).description("SUSE Linux Enterprise Server 11 (64-bit)")
|
||||||
OSType.builder().id(136).OSCategoryId(4).description("Red Hat Enterprise Linux 6.0 (32-bit)")
|
.build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(40).OSCategoryId(5).description("SUSE Linux Enterprise Server 9 SP4 (32-bit)")
|
||||||
OSType.builder().id(137).OSCategoryId(4).description("Red Hat Enterprise Linux 6.0 (64-bit)")
|
.build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(121).OSCategoryId(10).description("Ubuntu 10.04 (32-bit)").build())
|
||||||
OSType.builder().id(85).OSCategoryId(9).description("SCO OpenServer 5").build()).add(
|
.add(OSType.builder().id(126).OSCategoryId(10).description("Ubuntu 10.04 (64-bit)").build())
|
||||||
OSType.builder().id(86).OSCategoryId(9).description("SCO UnixWare 7").build()).add(
|
.add(OSType.builder().id(125).OSCategoryId(10).description("Ubuntu 8.04 (32-bit)").build())
|
||||||
OSType.builder().id(79).OSCategoryId(9).description("Sun Solaris 10(32-bit)").build()).add(
|
.add(OSType.builder().id(130).OSCategoryId(10).description("Ubuntu 8.04 (64-bit)").build())
|
||||||
OSType.builder().id(80).OSCategoryId(9).description("Sun Solaris 10(64-bit)").build()).add(
|
.add(OSType.builder().id(124).OSCategoryId(10).description("Ubuntu 8.10 (32-bit)").build())
|
||||||
OSType.builder().id(82).OSCategoryId(9).description("Sun Solaris 8(Experimental)").build())
|
.add(OSType.builder().id(129).OSCategoryId(10).description("Ubuntu 8.10 (64-bit)").build())
|
||||||
.add(OSType.builder().id(81).OSCategoryId(9).description("Sun Solaris 9(Experimental)").build()).add(
|
.add(OSType.builder().id(123).OSCategoryId(10).description("Ubuntu 9.04 (32-bit)").build())
|
||||||
OSType.builder().id(109).OSCategoryId(5).description("SUSE Linux Enterprise 10(32-bit)")
|
.add(OSType.builder().id(128).OSCategoryId(10).description("Ubuntu 9.04 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(122).OSCategoryId(10).description("Ubuntu 9.10 (32-bit)").build())
|
||||||
OSType.builder().id(110).OSCategoryId(5).description("SUSE Linux Enterprise 10(64-bit)")
|
.add(OSType.builder().id(127).OSCategoryId(10).description("Ubuntu 9.10 (64-bit)").build())
|
||||||
.build()).add(
|
.add(OSType.builder().id(95).OSCategoryId(6).description("Windows 2000 Advanced Server").build())
|
||||||
OSType.builder().id(96).OSCategoryId(5).description("SUSE Linux Enterprise 8(32-bit)").build())
|
.add(OSType.builder().id(105).OSCategoryId(6).description("Windows 2000 Professional").build())
|
||||||
.add(OSType.builder().id(97).OSCategoryId(5).description("SUSE Linux Enterprise 8(64-bit)").build())
|
.add(OSType.builder().id(61).OSCategoryId(6).description("Windows 2000 Server").build())
|
||||||
.add(OSType.builder().id(107).OSCategoryId(5).description("SUSE Linux Enterprise 9(32-bit)").build())
|
.add(OSType.builder().id(55).OSCategoryId(6).description("Windows 2000 Server SP4 (32-bit)").build())
|
||||||
.add(OSType.builder().id(108).OSCategoryId(5).description("SUSE Linux Enterprise 9(64-bit)").build())
|
.add(OSType.builder().id(65).OSCategoryId(6).description("Windows 3.1").build())
|
||||||
.add(
|
.add(OSType.builder().id(48).OSCategoryId(6).description("Windows 7 (32-bit)").build())
|
||||||
OSType.builder().id(41).OSCategoryId(5).description(
|
.add(OSType.builder().id(49).OSCategoryId(6).description("Windows 7 (64-bit)").build())
|
||||||
"SUSE Linux Enterprise Server 10 SP1 (32-bit)").build()).add(
|
.add(OSType.builder().id(63).OSCategoryId(6).description("Windows 95").build())
|
||||||
OSType.builder().id(42).OSCategoryId(5).description(
|
.add(OSType.builder().id(62).OSCategoryId(6).description("Windows 98").build())
|
||||||
"SUSE Linux Enterprise Server 10 SP1 (64-bit)").build()).add(
|
.add(OSType.builder().id(64).OSCategoryId(6).description("Windows NT 4").build())
|
||||||
OSType.builder().id(43).OSCategoryId(5).description(
|
.add(OSType.builder().id(87).OSCategoryId(6).description("Windows Server 2003 DataCenter Edition(32-bit)")
|
||||||
"SUSE Linux Enterprise Server 10 SP2 (32-bit)").build()).add(
|
.build())
|
||||||
OSType.builder().id(44).OSCategoryId(5).description(
|
.add(OSType.builder().id(88).OSCategoryId(6).description("Windows Server 2003 DataCenter Edition(64-bit)")
|
||||||
"SUSE Linux Enterprise Server 10 SP2 (64-bit)").build()).add(
|
.build())
|
||||||
OSType.builder().id(45).OSCategoryId(5).description(
|
.add(OSType.builder().id(50).OSCategoryId(6).description("Windows Server 2003 Enterprise Edition(32-bit)")
|
||||||
"SUSE Linux Enterprise Server 10 SP3 (64-bit)").build()).add(
|
.build())
|
||||||
OSType.builder().id(46).OSCategoryId(5).description("SUSE Linux Enterprise Server 11 (32-bit)")
|
.add(OSType.builder().id(51).OSCategoryId(6).description("Windows Server 2003 Enterprise Edition(64-bit)")
|
||||||
.build()).add(
|
.build())
|
||||||
OSType.builder().id(47).OSCategoryId(5).description("SUSE Linux Enterprise Server 11 (64-bit)")
|
.add(OSType.builder().id(89).OSCategoryId(6).description("Windows Server 2003 Standard Edition(32-bit)")
|
||||||
.build()).add(
|
.build())
|
||||||
OSType.builder().id(40).OSCategoryId(5).description(
|
.add(OSType.builder().id(90).OSCategoryId(6).description("Windows Server 2003 Standard Edition(64-bit)")
|
||||||
"SUSE Linux Enterprise Server 9 SP4 (32-bit)").build()).add(
|
.build())
|
||||||
OSType.builder().id(121).OSCategoryId(10).description("Ubuntu 10.04 (32-bit)").build()).add(
|
.add(OSType.builder().id(91).OSCategoryId(6).description("Windows Server 2003 Web Edition").build())
|
||||||
OSType.builder().id(126).OSCategoryId(10).description("Ubuntu 10.04 (64-bit)").build()).add(
|
.add(OSType.builder().id(52).OSCategoryId(6).description("Windows Server 2008 (32-bit)").build())
|
||||||
OSType.builder().id(125).OSCategoryId(10).description("Ubuntu 8.04 (32-bit)").build()).add(
|
.add(OSType.builder().id(53).OSCategoryId(6).description("Windows Server 2008 (64-bit)").build())
|
||||||
OSType.builder().id(130).OSCategoryId(10).description("Ubuntu 8.04 (64-bit)").build()).add(
|
.add(OSType.builder().id(54).OSCategoryId(6).description("Windows Server 2008 R2 (64-bit)").build())
|
||||||
OSType.builder().id(124).OSCategoryId(10).description("Ubuntu 8.10 (32-bit)").build()).add(
|
.add(OSType.builder().id(56).OSCategoryId(6).description("Windows Vista (32-bit)").build())
|
||||||
OSType.builder().id(129).OSCategoryId(10).description("Ubuntu 8.10 (64-bit)").build()).add(
|
.add(OSType.builder().id(101).OSCategoryId(6).description("Windows Vista (64-bit)").build())
|
||||||
OSType.builder().id(123).OSCategoryId(10).description("Ubuntu 9.04 (32-bit)").build()).add(
|
.add(OSType.builder().id(93).OSCategoryId(6).description("Windows XP (32-bit)").build())
|
||||||
OSType.builder().id(128).OSCategoryId(10).description("Ubuntu 9.04 (64-bit)").build()).add(
|
.add(OSType.builder().id(94).OSCategoryId(6).description("Windows XP (64-bit)").build())
|
||||||
OSType.builder().id(122).OSCategoryId(10).description("Ubuntu 9.10 (32-bit)").build()).add(
|
.add(OSType.builder().id(57).OSCategoryId(6).description("Windows XP SP2 (32-bit)").build())
|
||||||
OSType.builder().id(127).OSCategoryId(10).description("Ubuntu 9.10 (64-bit)").build()).add(
|
.add(OSType.builder().id(58).OSCategoryId(6).description("Windows XP SP3 (32-bit)").build()).build();
|
||||||
OSType.builder().id(95).OSCategoryId(6).description("Windows 2000 Advanced Server").build())
|
|
||||||
.add(OSType.builder().id(105).OSCategoryId(6).description("Windows 2000 Professional").build()).add(
|
|
||||||
OSType.builder().id(61).OSCategoryId(6).description("Windows 2000 Server").build())
|
|
||||||
.add(OSType.builder().id(55).OSCategoryId(6).description("Windows 2000 Server SP4 (32-bit)").build())
|
|
||||||
.add(OSType.builder().id(65).OSCategoryId(6).description("Windows 3.1").build()).add(
|
|
||||||
OSType.builder().id(48).OSCategoryId(6).description("Windows 7 (32-bit)").build()).add(
|
|
||||||
OSType.builder().id(49).OSCategoryId(6).description("Windows 7 (64-bit)").build()).add(
|
|
||||||
OSType.builder().id(63).OSCategoryId(6).description("Windows 95").build()).add(
|
|
||||||
OSType.builder().id(62).OSCategoryId(6).description("Windows 98").build()).add(
|
|
||||||
OSType.builder().id(64).OSCategoryId(6).description("Windows NT 4").build()).add(
|
|
||||||
OSType.builder().id(87).OSCategoryId(6).description(
|
|
||||||
"Windows Server 2003 DataCenter Edition(32-bit)").build()).add(
|
|
||||||
OSType.builder().id(88).OSCategoryId(6).description(
|
|
||||||
"Windows Server 2003 DataCenter Edition(64-bit)").build()).add(
|
|
||||||
OSType.builder().id(50).OSCategoryId(6).description(
|
|
||||||
"Windows Server 2003 Enterprise Edition(32-bit)").build()).add(
|
|
||||||
OSType.builder().id(51).OSCategoryId(6).description(
|
|
||||||
"Windows Server 2003 Enterprise Edition(64-bit)").build()).add(
|
|
||||||
OSType.builder().id(89).OSCategoryId(6).description(
|
|
||||||
"Windows Server 2003 Standard Edition(32-bit)").build()).add(
|
|
||||||
OSType.builder().id(90).OSCategoryId(6).description(
|
|
||||||
"Windows Server 2003 Standard Edition(64-bit)").build()).add(
|
|
||||||
OSType.builder().id(91).OSCategoryId(6).description("Windows Server 2003 Web Edition").build())
|
|
||||||
.add(OSType.builder().id(52).OSCategoryId(6).description("Windows Server 2008 (32-bit)").build()).add(
|
|
||||||
OSType.builder().id(53).OSCategoryId(6).description("Windows Server 2008 (64-bit)").build())
|
|
||||||
.add(OSType.builder().id(54).OSCategoryId(6).description("Windows Server 2008 R2 (64-bit)").build())
|
|
||||||
.add(OSType.builder().id(56).OSCategoryId(6).description("Windows Vista (32-bit)").build()).add(
|
|
||||||
OSType.builder().id(101).OSCategoryId(6).description("Windows Vista (64-bit)").build()).add(
|
|
||||||
OSType.builder().id(93).OSCategoryId(6).description("Windows XP (32-bit)").build()).add(
|
|
||||||
OSType.builder().id(94).OSCategoryId(6).description("Windows XP (64-bit)").build()).add(
|
|
||||||
OSType.builder().id(57).OSCategoryId(6).description("Windows XP SP2 (32-bit)").build()).add(
|
|
||||||
OSType.builder().id(58).OSCategoryId(6).description("Windows XP SP3 (32-bit)").build()).build();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -35,12 +35,11 @@ import com.google.common.collect.ImmutableSet;
|
||||||
@Test(groups = "unit")
|
@Test(groups = "unit")
|
||||||
public class ListPublicIPAddressesResponseTest extends BaseSetParserTest<PublicIPAddress> {
|
public class ListPublicIPAddressesResponseTest extends BaseSetParserTest<PublicIPAddress> {
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String resource() {
|
public String resource() {
|
||||||
return "/listpublicipaddressesresponse.json";
|
return "/listpublicipaddressesresponse.json";
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@SelectJson("publicipaddress")
|
@SelectJson("publicipaddress")
|
||||||
public Set<PublicIPAddress> expected() {
|
public Set<PublicIPAddress> expected() {
|
||||||
|
|
|
@ -47,9 +47,12 @@ public class NetworkPredicatesTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testSupportsStaticNATFindsWhenFirewallHasStaticNatFeature() {
|
public void testSupportsStaticNATFindsWhenFirewallHasStaticNatFeature() {
|
||||||
Network network = Network.builder().id(204).services(
|
Network network = Network
|
||||||
ImmutableSet.of(new NetworkService("Firewall", ImmutableMap.<String, String> of("StaticNat", "true"))))
|
.builder()
|
||||||
.build();
|
.id(204)
|
||||||
|
.services(
|
||||||
|
ImmutableSet.of(new NetworkService("Firewall", ImmutableMap.<String, String> of("StaticNat", "true"))))
|
||||||
|
.build();
|
||||||
|
|
||||||
assert !hasLoadBalancerService().apply(network);
|
assert !hasLoadBalancerService().apply(network);
|
||||||
assert supportsStaticNAT().apply(network);
|
assert supportsStaticNAT().apply(network);
|
||||||
|
@ -57,8 +60,8 @@ public class NetworkPredicatesTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testNoSupport() {
|
public void testNoSupport() {
|
||||||
Network network = Network.builder().id(204).services(
|
Network network = Network.builder().id(204)
|
||||||
ImmutableSet.of(new NetworkService("Firewall", ImmutableMap.<String, String> of()))).build();
|
.services(ImmutableSet.of(new NetworkService("Firewall", ImmutableMap.<String, String> of()))).build();
|
||||||
|
|
||||||
assert !hasLoadBalancerService().apply(network);
|
assert !hasLoadBalancerService().apply(network);
|
||||||
assert !supportsStaticNAT().apply(network);
|
assert !supportsStaticNAT().apply(network);
|
||||||
|
@ -66,9 +69,12 @@ public class NetworkPredicatesTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testSupportsPortForwardingFindsWhenFirewallHasPortForwardingFeature() {
|
public void testSupportsPortForwardingFindsWhenFirewallHasPortForwardingFeature() {
|
||||||
Network network = Network.builder().id(204).services(
|
Network network = Network
|
||||||
ImmutableSet.of(new NetworkService("Firewall", ImmutableMap
|
.builder()
|
||||||
.<String, String> of("PortForwarding", "true")))).build();
|
.id(204)
|
||||||
|
.services(
|
||||||
|
ImmutableSet.of(new NetworkService("Firewall", ImmutableMap.<String, String> of("PortForwarding",
|
||||||
|
"true")))).build();
|
||||||
|
|
||||||
assert !hasLoadBalancerService().apply(network);
|
assert !hasLoadBalancerService().apply(network);
|
||||||
assert !supportsStaticNAT().apply(network);
|
assert !supportsStaticNAT().apply(network);
|
||||||
|
@ -76,8 +82,11 @@ public class NetworkPredicatesTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testSupportsPortForwardingAndStaticNATWhenFirewallHasFeatures() {
|
public void testSupportsPortForwardingAndStaticNATWhenFirewallHasFeatures() {
|
||||||
Network network = Network.builder().id(204).services(
|
Network network = Network
|
||||||
ImmutableSet.of(new NetworkService("Firewall", ImmutableMap.<String, String> of("StaticNat", "true",
|
.builder()
|
||||||
|
.id(204)
|
||||||
|
.services(
|
||||||
|
ImmutableSet.of(new NetworkService("Firewall", ImmutableMap.<String, String> of("StaticNat", "true",
|
||||||
"PortForwarding", "true")))).build();
|
"PortForwarding", "true")))).build();
|
||||||
|
|
||||||
assert Predicates.and(supportsPortForwarding(), supportsStaticNAT()).apply(network);
|
assert Predicates.and(supportsPortForwarding(), supportsStaticNAT()).apply(network);
|
||||||
|
|
|
@ -46,23 +46,23 @@ public class PublicIPAddressPredicatesTest {
|
||||||
|
|
||||||
public void testIsNotAvailableWhenAssignedToVM() {
|
public void testIsNotAvailableWhenAssignedToVM() {
|
||||||
PublicIPAddress address = PublicIPAddress.builder().state(PublicIPAddress.State.ALLOCATED).virtualMachineId(1)
|
PublicIPAddress address = PublicIPAddress.builder().state(PublicIPAddress.State.ALLOCATED).virtualMachineId(1)
|
||||||
.id(204).build();
|
.id(204).build();
|
||||||
|
|
||||||
assert !available().apply(address);
|
assert !available().apply(address);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testIsNotAvailableWhenSourceNAT() {
|
public void testIsNotAvailableWhenSourceNAT() {
|
||||||
PublicIPAddress address = PublicIPAddress.builder().state(PublicIPAddress.State.ALLOCATED).isSourceNAT(true).id(
|
PublicIPAddress address = PublicIPAddress.builder().state(PublicIPAddress.State.ALLOCATED).isSourceNAT(true)
|
||||||
204).build();
|
.id(204).build();
|
||||||
|
|
||||||
assert !available().apply(address);
|
assert !available().apply(address);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testIsNotAvailableWhenStaticNAT() {
|
public void testIsNotAvailableWhenStaticNAT() {
|
||||||
PublicIPAddress address = PublicIPAddress.builder().state(PublicIPAddress.State.ALLOCATED).isStaticNAT(true).id(
|
PublicIPAddress address = PublicIPAddress.builder().state(PublicIPAddress.State.ALLOCATED).isStaticNAT(true)
|
||||||
204).build();
|
.id(204).build();
|
||||||
|
|
||||||
assert !available().apply(address);
|
assert !available().apply(address);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue