Repository: jclouds-labs Updated Branches: refs/heads/master 867574c3f -> 7c396ecb1
JCLOUDS-569: Added Job class to represent the Disk jobs Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/7c396ecb Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/7c396ecb Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/7c396ecb Branch: refs/heads/master Commit: 7c396ecb1e116e787ba6b51a835fc660732fbe85 Parents: 867574c Author: rahulruikar <[email protected]> Authored: Thu May 29 18:14:09 2014 +1000 Committer: Ignasi Barrera <[email protected]> Committed: Mon Jun 2 16:16:05 2014 +0200 ---------------------------------------------------------------------- .../jclouds/cloudsigma2/domain/DriveInfo.java | 10 +- .../org/jclouds/cloudsigma2/domain/Job.java | 101 ++++++++++++++ .../cloudsigma2/domain/LibraryDrive.java | 11 +- .../cloudsigma2/CloudSigma2ApiExpectTest.java | 139 ++++++++++--------- .../cloudsigma2/functions/DriveToJsonTest.java | 28 ++-- .../functions/LibraryDriveToJsonTest.java | 24 ++-- cloudsigma2/src/test/resources/drive-info.json | 39 ++++++ 7 files changed, 253 insertions(+), 99 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/7c396ecb/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/DriveInfo.java ---------------------------------------------------------------------- diff --git a/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/DriveInfo.java b/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/DriveInfo.java index 6ef3cf4..9c58341 100644 --- a/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/DriveInfo.java +++ b/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/DriveInfo.java @@ -34,7 +34,7 @@ public class DriveInfo extends Drive { protected BigInteger size; protected boolean allowMultimount; protected List<String> affinities; - protected List<String> jobs; + protected List<Job> jobs; protected List<DriveLicense> licenses; protected MediaType media = MediaType.UNRECOGNIZED; protected Map<String, String> meta; @@ -72,7 +72,7 @@ public class DriveInfo extends Drive { * @param jobs Background jobs related to this resource * @return DriveInfo Builder */ - public Builder jobs(List<String> jobs) { + public Builder jobs(List<Job> jobs) { this.jobs = ImmutableList.copyOf(jobs); return this; } @@ -207,7 +207,7 @@ public class DriveInfo extends Drive { @Named("allow_multimount") protected final boolean allowMultimount; protected final List<String> affinities; - protected final List<String> jobs; + protected final List<Job> jobs; protected final List<DriveLicense> licenses; protected final MediaType media; protected final Map<String, String> meta; @@ -222,7 +222,7 @@ public class DriveInfo extends Drive { }) public DriveInfo(String uuid, String name, URI resourceUri, BigInteger size, Owner owner, DriveStatus status, - boolean allowMultimount, List<String> affinities, List<String> jobs, List<DriveLicense> licenses, + boolean allowMultimount, List<String> affinities, List<Job> jobs, List<DriveLicense> licenses, MediaType media, Map<String, String> meta, List<Server> mountedOn, List<String> tags) { super(uuid, name, resourceUri, owner, status); this.size = size; @@ -260,7 +260,7 @@ public class DriveInfo extends Drive { /** * @return Background jobs related to this resource */ - public List<String> getJobs() { + public List<Job> getJobs() { return jobs; } http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/7c396ecb/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/Job.java ---------------------------------------------------------------------- diff --git a/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/Job.java b/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/Job.java new file mode 100644 index 0000000..d6eb212 --- /dev/null +++ b/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/Job.java @@ -0,0 +1,101 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jclouds.cloudsigma2.domain; + +import java.beans.ConstructorProperties; + +import static com.google.common.base.Preconditions.checkNotNull; + +import javax.inject.Named; + +/** + * @author Rahul Ruikar + */ +public class Job { + + public static class Builder { + private String resourceUri; + private String uuid; + + public Builder resourceUri(String resourceUri) { + this.resourceUri = resourceUri; + return this; + } + + public Builder uuid(String uuid) { + this.uuid = uuid; + return this; + } + + public Job build() { + return new Job(resourceUri, uuid); + } + } + + @Named("resource_uri") + private final String resourceUri; + @Named("uuid") + private final String uuid; + + @ConstructorProperties({ + "resource_uri", "uuid" + }) + + public Job(String resourceUri, String uuid) { + this.resourceUri = checkNotNull(resourceUri, "resourceUri"); + this.uuid = checkNotNull(uuid, "uuid"); + } + + public String getResourceUri() { + return resourceUri; + } + + public String getUuid() { + return uuid; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((resourceUri == null) ? 0 : resourceUri.hashCode()); + result = prime * result + ((uuid == null) ? 0 : uuid.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) return true; + if (obj == null) return false; + if (!(obj instanceof Job)) return false; + Job other = (Job) obj; + if (resourceUri == null) { + if (other.resourceUri != null) return false; + } else if (!resourceUri.equals(other.resourceUri)) + return false; + if (uuid == null) { + if (other.uuid != null) return false; + } else if (!uuid.equals(other.uuid)) + return false; + return true; + } + + @Override + public String toString() { + return "Job [resourceUri=" + resourceUri + ", uuid=" + uuid + "]"; + } +} http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/7c396ecb/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/LibraryDrive.java ---------------------------------------------------------------------- diff --git a/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/LibraryDrive.java b/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/LibraryDrive.java index 2c06b06..7e51d8e 100644 --- a/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/LibraryDrive.java +++ b/cloudsigma2/src/main/java/org/jclouds/cloudsigma2/domain/LibraryDrive.java @@ -16,15 +16,16 @@ */ package org.jclouds.cloudsigma2.domain; -import com.google.common.collect.ImmutableList; - -import javax.inject.Named; import java.beans.ConstructorProperties; import java.math.BigInteger; import java.net.URI; import java.util.List; import java.util.Map; +import javax.inject.Named; + +import com.google.common.collect.ImmutableList; + /** * @author Vladimir Shevchenko */ @@ -117,7 +118,7 @@ public class LibraryDrive extends DriveInfo { * {@inheritDoc} */ @Override - public Builder jobs(List<String> jobs) { + public Builder jobs(List<Job> jobs) { this.jobs = ImmutableList.copyOf(jobs); return this; } @@ -253,7 +254,7 @@ public class LibraryDrive extends DriveInfo { "description", "favourite", "image_type", "install_notes", "os", "paid", "url" }) public LibraryDrive(String uuid, String name, URI resourceUri, BigInteger size, Owner owner, DriveStatus status, - boolean allowMultimount, List<String> affinities, List<String> jobs, List<DriveLicense> licenses, + boolean allowMultimount, List<String> affinities, List<Job> jobs, List<DriveLicense> licenses, MediaType media, Map<String, String> meta, List<Server> mountedOn, List<String> tags, String arch, List<String> category, String description, boolean favorite, String imageType, String installNotes, String os, boolean paid, String url) { http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/7c396ecb/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/CloudSigma2ApiExpectTest.java ---------------------------------------------------------------------- diff --git a/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/CloudSigma2ApiExpectTest.java b/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/CloudSigma2ApiExpectTest.java index 8d268e3..394f1be 100644 --- a/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/CloudSigma2ApiExpectTest.java +++ b/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/CloudSigma2ApiExpectTest.java @@ -50,7 +50,6 @@ import org.jclouds.date.internal.SimpleDateFormatDateService; import org.jclouds.http.HttpRequest; import org.jclouds.http.HttpResponse; import org.jclouds.rest.internal.BaseRestApiExpectTest; -import org.testng.Assert; import org.testng.annotations.Test; import javax.ws.rs.core.MediaType; @@ -128,10 +127,10 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<Drive> drives = api.listDrives().concat().toList(); - Assert.assertEquals(drives.size(), 3); - Assert.assertEquals(drives.get(0).getUuid(), "92ca1450-417e-4cc1-983b-1015777e2591"); - Assert.assertEquals(drives.get(1).getUuid(), "414ad24b-ba41-47c0-9751-ef5060b6c391"); - Assert.assertEquals(drives.get(2).getUuid(), "7bc04bc5-bd09-4269-b45d-16b58d6f71b4"); + assertEquals(drives.size(), 3); + assertEquals(drives.get(0).getUuid(), "92ca1450-417e-4cc1-983b-1015777e2591"); + assertEquals(drives.get(1).getUuid(), "414ad24b-ba41-47c0-9751-ef5060b6c391"); + assertEquals(drives.get(2).getUuid(), "7bc04bc5-bd09-4269-b45d-16b58d6f71b4"); } @Test @@ -171,10 +170,10 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<DriveInfo> drives = api.listDrivesInfo().concat().toList(); - Assert.assertEquals(drives.size(), 3); - Assert.assertEquals(drives.get(0).getUuid(), "92ca1450-417e-4cc1-983b-1015777e2591"); - Assert.assertEquals(drives.get(1).getUuid(), "414ad24b-ba41-47c0-9751-ef5060b6c391"); - Assert.assertEquals(drives.get(2).getUuid(), "7bc04bc5-bd09-4269-b45d-16b58d6f71b4"); + assertEquals(drives.size(), 3); + assertEquals(drives.get(0).getUuid(), "92ca1450-417e-4cc1-983b-1015777e2591"); + assertEquals(drives.get(1).getUuid(), "414ad24b-ba41-47c0-9751-ef5060b6c391"); + assertEquals(drives.get(2).getUuid(), "7bc04bc5-bd09-4269-b45d-16b58d6f71b4"); } @Test @@ -194,17 +193,25 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A @Test public void testGetDriveInfo() throws Exception { - String uuid = "e96f3c63-6f50-47eb-9401-a56c5ccf6b32"; + String uuid = "f17cce62-bcc9-4e0b-a57b-a5582b05aff0"; CloudSigma2Api api = requestSendsResponse( getBuilder() .endpoint(endpoint + "drives/" + uuid + "/") .build(), responseBuilder() - .payload(payloadFromResourceWithContentType("/drives-detail.json", MediaType.APPLICATION_JSON)) + .payload(payloadFromResourceWithContentType("/drive-info.json", MediaType.APPLICATION_JSON)) .build()); DriveInfo result = api.getDriveInfo(uuid); assertNotNull(result); + assertEquals(result.getName(), "test_drive_1"); + assertEquals(result.getJobs().get(0).getResourceUri(), + "/api/2.0/jobs/ec01d3bc-1ec0-440d-a1c3-0a6421d0d511/"); + assertEquals(result.getJobs().get(0).getUuid(), "ec01d3bc-1ec0-440d-a1c3-0a6421d0d511"); + + assertEquals(result.getJobs().get(2).getResourceUri(), + "/api/2.0/jobs/8bacb5b3-6392-4f74-8094-ba3376a3f5f7/"); + assertEquals(result.getJobs().get(2).getUuid(), "8bacb5b3-6392-4f74-8094-ba3376a3f5f7"); } @Test @@ -359,10 +366,10 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<LibraryDrive> drives = api.listLibraryDrives().concat().toList(); - Assert.assertEquals(drives.size(), 3); - Assert.assertEquals(drives.get(0).getUuid(), "8c45d8d9-4efd-44ec-9833-8d52004b4298"); - Assert.assertEquals(drives.get(1).getUuid(), "d1ec9f26-ba44-4002-bbdf-82a31a84b611"); - Assert.assertEquals(drives.get(2).getUuid(), "dd9da460-b1ab-419a-9fa1-804540eee4c3"); + assertEquals(drives.size(), 3); + assertEquals(drives.get(0).getUuid(), "8c45d8d9-4efd-44ec-9833-8d52004b4298"); + assertEquals(drives.get(1).getUuid(), "d1ec9f26-ba44-4002-bbdf-82a31a84b611"); + assertEquals(drives.get(2).getUuid(), "dd9da460-b1ab-419a-9fa1-804540eee4c3"); } @Test @@ -440,10 +447,10 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<Server> servers = api.listServers().concat().toList(); - Assert.assertEquals(servers.size(), 3); - Assert.assertEquals(servers.get(0).getUuid(), "61d61337-884b-4c87-b4de-f7f48f9cfc84"); - Assert.assertEquals(servers.get(1).getUuid(), "33e71c37-0d0a-4a3a-a1ea-dc7265c9a154"); - Assert.assertEquals(servers.get(2).getUuid(), "05c16b9a-f2f5-4da6-a1cb-b90722c32212"); + assertEquals(servers.size(), 3); + assertEquals(servers.get(0).getUuid(), "61d61337-884b-4c87-b4de-f7f48f9cfc84"); + assertEquals(servers.get(1).getUuid(), "33e71c37-0d0a-4a3a-a1ea-dc7265c9a154"); + assertEquals(servers.get(2).getUuid(), "05c16b9a-f2f5-4da6-a1cb-b90722c32212"); } @Test @@ -483,10 +490,10 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<ServerInfo> serverInfos = api.listServersInfo().concat().toList(); - Assert.assertEquals(serverInfos.size(), 3); - Assert.assertEquals(serverInfos.get(0).getUuid(), "a19a425f-9e92-42f6-89fb-6361203071bb"); - Assert.assertEquals(serverInfos.get(1).getUuid(), "61d61337-884b-4c87-b4de-f7f48f9cfc84"); - Assert.assertEquals(serverInfos.get(2).getUuid(), "33e71c37-0d0a-4a3a-a1ea-dc7265c9a154"); + assertEquals(serverInfos.size(), 3); + assertEquals(serverInfos.get(0).getUuid(), "a19a425f-9e92-42f6-89fb-6361203071bb"); + assertEquals(serverInfos.get(1).getUuid(), "61d61337-884b-4c87-b4de-f7f48f9cfc84"); + assertEquals(serverInfos.get(2).getUuid(), "33e71c37-0d0a-4a3a-a1ea-dc7265c9a154"); } @Test @@ -744,9 +751,9 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<FirewallPolicy> firewallPolicies = api.listFirewallPolicies().concat().toList(); - Assert.assertEquals(firewallPolicies.size(), 2); - Assert.assertEquals(firewallPolicies.get(0).getUuid(), "b68dd907-69fc-4b3c-b954-c39d0046525b"); - Assert.assertEquals(firewallPolicies.get(1).getUuid(), "cf8479b4-c98b-46c8-ab9c-108bb00c8218"); + assertEquals(firewallPolicies.size(), 2); + assertEquals(firewallPolicies.get(0).getUuid(), "b68dd907-69fc-4b3c-b954-c39d0046525b"); + assertEquals(firewallPolicies.get(1).getUuid(), "cf8479b4-c98b-46c8-ab9c-108bb00c8218"); } @Test @@ -789,9 +796,9 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<FirewallPolicy> firewallPolicies = api.listFirewallPoliciesInfo().concat().toList(); - Assert.assertEquals(firewallPolicies.size(), 2); - Assert.assertEquals(firewallPolicies.get(0).getUuid(), "b68dd907-69fc-4b3c-b954-c39d0046525b"); - Assert.assertEquals(firewallPolicies.get(1).getUuid(), "cf8479b4-c98b-46c8-ab9c-108bb00c8218"); + assertEquals(firewallPolicies.size(), 2); + assertEquals(firewallPolicies.get(0).getUuid(), "b68dd907-69fc-4b3c-b954-c39d0046525b"); + assertEquals(firewallPolicies.get(1).getUuid(), "cf8479b4-c98b-46c8-ab9c-108bb00c8218"); } @Test @@ -1030,9 +1037,9 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<VLANInfo> vlans = api.listVLANs().concat().toList(); - Assert.assertEquals(vlans.size(), 2); - Assert.assertEquals(vlans.get(0).getUuid(), "96537817-f4b6-496b-a861-e74192d3ccb0"); - Assert.assertEquals(vlans.get(1).getUuid(), "00b445a9-3936-47e5-ba8a-38adcf43db20"); + assertEquals(vlans.size(), 2); + assertEquals(vlans.get(0).getUuid(), "96537817-f4b6-496b-a861-e74192d3ccb0"); + assertEquals(vlans.get(1).getUuid(), "00b445a9-3936-47e5-ba8a-38adcf43db20"); } @Test @@ -1070,9 +1077,9 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<VLANInfo> vlanInfos = api.listVLANInfo().concat().toList(); - Assert.assertEquals(vlanInfos.size(), 2); - Assert.assertEquals(vlanInfos.get(0).getUuid(), "96537817-f4b6-496b-a861-e74192d3ccb0"); - Assert.assertEquals(vlanInfos.get(1).getUuid(), "00b445a9-3936-47e5-ba8a-38adcf43db20"); + assertEquals(vlanInfos.size(), 2); + assertEquals(vlanInfos.get(0).getUuid(), "96537817-f4b6-496b-a861-e74192d3ccb0"); + assertEquals(vlanInfos.get(1).getUuid(), "00b445a9-3936-47e5-ba8a-38adcf43db20"); } @Test @@ -1132,9 +1139,9 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<IP> ips = api.listIPs().concat().toList(); - Assert.assertEquals(ips.size(), 2); - Assert.assertEquals(ips.get(0).getUuid(), "185.12.6.183"); - Assert.assertEquals(ips.get(1).getUuid(), "185.12.5.233"); + assertEquals(ips.size(), 2); + assertEquals(ips.get(0).getUuid(), "185.12.6.183"); + assertEquals(ips.get(1).getUuid(), "185.12.5.233"); } @Test @@ -1172,9 +1179,9 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<IPInfo> ipInfos = api.listIPInfo().concat().toList(); - Assert.assertEquals(ipInfos.size(), 2); - Assert.assertEquals(ipInfos.get(0).getUuid(), "185.12.6.183"); - Assert.assertEquals(ipInfos.get(1).getUuid(), "185.12.5.233"); + assertEquals(ipInfos.size(), 2); + assertEquals(ipInfos.get(0).getUuid(), "185.12.6.183"); + assertEquals(ipInfos.get(1).getUuid(), "185.12.5.233"); } @Test @@ -1251,9 +1258,9 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<Tag> tags = api.listTags().concat().toList(); - Assert.assertEquals(tags.size(), 2); - Assert.assertEquals(tags.get(0).getUuid(), "956e2ca0-dee3-4b3f-a1be-a6e86f90946f"); - Assert.assertEquals(tags.get(1).getUuid(), "68bb0cfc-0c76-4f37-847d-7bb705c5ae46"); + assertEquals(tags.size(), 2); + assertEquals(tags.get(0).getUuid(), "956e2ca0-dee3-4b3f-a1be-a6e86f90946f"); + assertEquals(tags.get(1).getUuid(), "68bb0cfc-0c76-4f37-847d-7bb705c5ae46"); } @Test @@ -1294,9 +1301,9 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<Tag> tags = api.listTagsInfo().concat().toList(); - Assert.assertEquals(tags.size(), 2); - Assert.assertEquals(tags.get(0).getUuid(), "956e2ca0-dee3-4b3f-a1be-a6e86f90946f"); - Assert.assertEquals(tags.get(1).getUuid(), "68bb0cfc-0c76-4f37-847d-7bb705c5ae46"); + assertEquals(tags.size(), 2); + assertEquals(tags.get(0).getUuid(), "956e2ca0-dee3-4b3f-a1be-a6e86f90946f"); + assertEquals(tags.get(1).getUuid(), "68bb0cfc-0c76-4f37-847d-7bb705c5ae46"); } @@ -1538,10 +1545,10 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<Subscription> subscriptions = api.listSubscriptions().concat().toList(); - Assert.assertEquals(subscriptions.size(), 3); - Assert.assertEquals(subscriptions.get(0).getUuid(), "509f8e27-1e64-49bb-aa5a-baec074b0210"); - Assert.assertEquals(subscriptions.get(1).getUuid(), "c2423c1a-8768-462c-bdc3-4ca09c1e650b"); - Assert.assertEquals(subscriptions.get(2).getUuid(), "9bb117d3-4bc5-4e2d-a907-b20abd48eaf9"); + assertEquals(subscriptions.size(), 3); + assertEquals(subscriptions.get(0).getUuid(), "509f8e27-1e64-49bb-aa5a-baec074b0210"); + assertEquals(subscriptions.get(1).getUuid(), "c2423c1a-8768-462c-bdc3-4ca09c1e650b"); + assertEquals(subscriptions.get(2).getUuid(), "9bb117d3-4bc5-4e2d-a907-b20abd48eaf9"); } @Test @@ -1735,12 +1742,12 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<Discount> discounts = api.listDiscounts().concat().toList(); - Assert.assertEquals(discounts.size(), 5); - Assert.assertEquals(discounts.get(0).getValue(), 0.03); - Assert.assertEquals(discounts.get(1).getValue(), 0.1); - Assert.assertEquals(discounts.get(2).getValue(), 0.25); - Assert.assertEquals(discounts.get(3).getValue(), 0.35); - Assert.assertEquals(discounts.get(4).getValue(), 0.45); + assertEquals(discounts.size(), 5); + assertEquals(discounts.get(0).getValue(), 0.03); + assertEquals(discounts.get(1).getValue(), 0.1); + assertEquals(discounts.get(2).getValue(), 0.25); + assertEquals(discounts.get(3).getValue(), 0.35); + assertEquals(discounts.get(4).getValue(), 0.45); } @Test @@ -1778,11 +1785,11 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<Transaction> transactions = api.listTransactions().concat().toList(); - Assert.assertEquals(transactions.size(), 4); - Assert.assertEquals(transactions.get(0).getId(), "11042920"); - Assert.assertEquals(transactions.get(1).getId(), "11042919"); - Assert.assertEquals(transactions.get(2).getId(), "11042661"); - Assert.assertEquals(transactions.get(3).getId(), "11042660"); + assertEquals(transactions.size(), 4); + assertEquals(transactions.get(0).getId(), "11042920"); + assertEquals(transactions.get(1).getId(), "11042919"); + assertEquals(transactions.get(2).getId(), "11042661"); + assertEquals(transactions.get(3).getId(), "11042660"); } @Test @@ -1820,10 +1827,10 @@ public class CloudSigma2ApiExpectTest extends BaseRestApiExpectTest<CloudSigma2A List<License> licenses = api.listLicenses().concat().toList(); - Assert.assertEquals(licenses.size(), 3); - Assert.assertEquals(licenses.get(0).getName(), "msft_lwa_00135"); - Assert.assertEquals(licenses.get(1).getName(), "msft_p73_04837"); - Assert.assertEquals(licenses.get(2).getName(), "msft_tfa_00009"); + assertEquals(licenses.size(), 3); + assertEquals(licenses.get(0).getName(), "msft_lwa_00135"); + assertEquals(licenses.get(1).getName(), "msft_p73_04837"); + assertEquals(licenses.get(2).getName(), "msft_tfa_00009"); } @Test http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/7c396ecb/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/functions/DriveToJsonTest.java ---------------------------------------------------------------------- diff --git a/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/functions/DriveToJsonTest.java b/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/functions/DriveToJsonTest.java index c47feb5..fba097e 100644 --- a/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/functions/DriveToJsonTest.java +++ b/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/functions/DriveToJsonTest.java @@ -16,15 +16,15 @@ */ package org.jclouds.cloudsigma2.functions; -import com.google.common.collect.ImmutableList; -import com.google.common.collect.Maps; -import com.google.gson.Gson; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; -import com.google.inject.Guice; +import java.math.BigInteger; +import java.net.URI; +import java.util.List; +import java.util.Map; + import org.jclouds.cloudsigma2.domain.DriveInfo; import org.jclouds.cloudsigma2.domain.DriveLicense; import org.jclouds.cloudsigma2.domain.DriveStatus; +import org.jclouds.cloudsigma2.domain.Job; import org.jclouds.cloudsigma2.domain.License; import org.jclouds.cloudsigma2.domain.MediaType; import org.jclouds.cloudsigma2.domain.Server; @@ -32,11 +32,12 @@ import org.testng.Assert; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; -import java.math.BigInteger; -import java.net.URI; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; +import com.google.common.collect.ImmutableList; +import com.google.common.collect.Maps; +import com.google.gson.Gson; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import com.google.inject.Guice; /** * @author Vladimir Shevchenko @@ -69,7 +70,10 @@ public class DriveToJsonTest { input = new DriveInfo.Builder() .affinities(ImmutableList.of("ssd", "sample")) .allowMultimount(false) - .jobs(new ArrayList<String>()) + .jobs(ImmutableList.of(new Job.Builder() + .resourceUri("/api/2.0/jobs/") + .uuid("933133a2-4ee2-4310-9a63-c8d5e705233") + .build())) .licenses(ImmutableList.of(new DriveLicense.Builder() .amount(1) .license(new License.Builder() http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/7c396ecb/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/functions/LibraryDriveToJsonTest.java ---------------------------------------------------------------------- diff --git a/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/functions/LibraryDriveToJsonTest.java b/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/functions/LibraryDriveToJsonTest.java index 4c1a68d..ef4b16d 100644 --- a/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/functions/LibraryDriveToJsonTest.java +++ b/cloudsigma2/src/test/java/org/jclouds/cloudsigma2/functions/LibraryDriveToJsonTest.java @@ -16,23 +16,25 @@ */ package org.jclouds.cloudsigma2.functions; -import com.google.common.collect.ImmutableList; -import com.google.common.collect.Lists; -import com.google.common.collect.Maps; -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; -import com.google.inject.Guice; +import java.math.BigInteger; +import java.net.URI; +import java.net.URISyntaxException; + import org.jclouds.cloudsigma2.domain.DriveLicense; import org.jclouds.cloudsigma2.domain.DriveStatus; -import org.jclouds.cloudsigma2.domain.MediaType; +import org.jclouds.cloudsigma2.domain.Job; import org.jclouds.cloudsigma2.domain.LibraryDrive; +import org.jclouds.cloudsigma2.domain.MediaType; import org.jclouds.cloudsigma2.domain.Server; import org.testng.Assert; import org.testng.annotations.Test; -import java.math.BigInteger; -import java.net.URI; -import java.net.URISyntaxException; +import com.google.common.collect.ImmutableList; +import com.google.common.collect.Lists; +import com.google.common.collect.Maps; +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; +import com.google.inject.Guice; /** * @author Vladimir Shevchenko @@ -65,7 +67,7 @@ public class LibraryDriveToJsonTest { .isFavorite(true) .imageType("install") .installNotes("test_install_notes") - .jobs(Lists.<String>newArrayList()) + .jobs(Lists.<Job>newArrayList()) .licenses(Lists.<DriveLicense>newArrayList()) .media(MediaType.CDROM) .meta(Maps.<String, String>newHashMap()) http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/7c396ecb/cloudsigma2/src/test/resources/drive-info.json ---------------------------------------------------------------------- diff --git a/cloudsigma2/src/test/resources/drive-info.json b/cloudsigma2/src/test/resources/drive-info.json new file mode 100644 index 0000000..f864a34 --- /dev/null +++ b/cloudsigma2/src/test/resources/drive-info.json @@ -0,0 +1,39 @@ +{ + "affinities": [], + "allow_multimount": false, + "jobs": [ + { + "resource_uri": "/api/2.0/jobs/ec01d3bc-1ec0-440d-a1c3-0a6421d0d511/", + "uuid": "ec01d3bc-1ec0-440d-a1c3-0a6421d0d511" + }, + { + "resource_uri": "/api/2.0/jobs/18e73d11-a677-4aa6-b5e4-cd0f2b8b4b10/", + "uuid": "18e73d11-a677-4aa6-b5e4-cd0f2b8b4b10" + }, + { + "resource_uri": "/api/2.0/jobs/8bacb5b3-6392-4f74-8094-ba3376a3f5f7/", + "uuid": "8bacb5b3-6392-4f74-8094-ba3376a3f5f7" + } + ], + "licenses": [], + "media": "disk", + "meta": {}, + "mounted_on": [], + "name": "test_drive_1", + "owner": { + "resource_uri": "/api/2.0/user/42cb107b-d57a-4808-93d9-2d3f9ae4fe71/", + "uuid": "42cb107b-d57a-4808-93d9-2d3f9ae4fe71" + }, + "resource_uri": "/api/2.0/drives/f17cce62-bcc9-4e0b-a57b-a5582b05aff0/", + "runtime": { + "is_snapshotable": true, + "snapshots_allocated_size": 0, + "storage_type": "dssd" + }, + "size": 1024000000, + "snapshots": [], + "status": "unmounted", + "storage_type": "dssd", + "tags": [], + "uuid": "f17cce62-bcc9-4e0b-a57b-a5582b05aff0" +} \ No newline at end of file
