summaryrefslogtreecommitdiffstats
path: root/nova-model/src/test/java/com/woorea/openstack/nova/model/ServerTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'nova-model/src/test/java/com/woorea/openstack/nova/model/ServerTest.java')
-rw-r--r--nova-model/src/test/java/com/woorea/openstack/nova/model/ServerTest.java552
1 files changed, 372 insertions, 180 deletions
diff --git a/nova-model/src/test/java/com/woorea/openstack/nova/model/ServerTest.java b/nova-model/src/test/java/com/woorea/openstack/nova/model/ServerTest.java
index e7658c1..3aa4833 100644
--- a/nova-model/src/test/java/com/woorea/openstack/nova/model/ServerTest.java
+++ b/nova-model/src/test/java/com/woorea/openstack/nova/model/ServerTest.java
@@ -2,8 +2,8 @@
* ============LICENSE_START=======================================================
* ONAP - SO
* ================================================================================
- * Copyright (C) 2018 Huawei Intellectual Property. All rights reserved.
- * ================================================================================
+ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
* Licensed 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
@@ -17,187 +17,379 @@
* limitations under the License.
* ============LICENSE_END=========================================================
*/
+
package com.woorea.openstack.nova.model;
+import com.woorea.openstack.nova.model.Flavor;
+import com.woorea.openstack.nova.model.Image;
+import com.woorea.openstack.nova.model.Link;
+import com.woorea.openstack.nova.model.SecurityGroup;
+import com.woorea.openstack.nova.model.Server;
+import com.woorea.openstack.nova.model.Server.Addresses;
+import com.woorea.openstack.nova.model.Server.Fault;
+import java.util.List;
+import java.util.Map;
+import org.codehaus.jackson.map.DeserializationConfig;
+import org.codehaus.jackson.map.ObjectMapper;
+import org.codehaus.jackson.map.SerializationConfig;
+import org.codehaus.jackson.map.annotate.JsonSerialize.Inclusion;
+import org.junit.Assert;
import org.junit.Test;
+import org.skyscreamer.jsonassert.JSONAssert;
+import org.skyscreamer.jsonassert.JSONCompareMode;
public class ServerTest {
- Server server = new Server();
-
- @Test
- public void getId() throws Exception {
- server.getId();
- }
-
- @Test
- public void getName() throws Exception {
- server.getName();
- }
-
- @Test
- public void getAddresses() throws Exception {
- server.getAddresses();
- }
-
- @Test
- public void getLinks() throws Exception {
- server.getLinks();
- }
-
- @Test
- public void getImage() throws Exception {
- server.getImage();
- }
-
- @Test
- public void setImage() throws Exception {
- server.setImage(new Image());
- }
-
- @Test
- public void getFlavor() throws Exception {
- server.getFlavor();
- }
-
- @Test
- public void setFlavor() throws Exception {
- server.setFlavor(new Flavor());
- }
-
- @Test
- public void getAccessIPv4() throws Exception {
- server.getAccessIPv4();
- }
-
- @Test
- public void getAccessIPv6() throws Exception {
- server.getAccessIPv6();
- }
-
- @Test
- public void getConfigDrive() throws Exception {
- server.getConfigDrive();
- }
-
- @Test
- public void getStatus() throws Exception {
- server.getStatus();
- }
-
- @Test
- public void getProgress() throws Exception {
- server.getProgress();
- }
-
- @Test
- public void getFault() throws Exception {
- server.getFault();
- }
-
- @Test
- public void getTenantId() throws Exception {
- server.getTenantId();
- }
-
- @Test
- public void getUserId() throws Exception {
- server.getUserId();
- }
-
- @Test
- public void getKeyName() throws Exception {
- server.getKeyName();
- }
-
- @Test
- public void getHostId() throws Exception {
- server.getHostId();
- }
-
- @Test
- public void getUpdated() throws Exception {
- server.getUpdated();
- }
-
- @Test
- public void getCreated() throws Exception {
- server.getCreated();
- }
-
- @Test
- public void getMetadata() throws Exception {
- server.getMetadata();
- }
-
- @Test
- public void getSecurityGroups() throws Exception {
- server.getSecurityGroups();
- }
-
- @Test
- public void getTaskState() throws Exception {
- server.getTaskState();
- }
-
- @Test
- public void getPowerState() throws Exception {
- server.getPowerState();
- }
-
- @Test
- public void getVmState() throws Exception {
- server.getVmState();
- }
-
- @Test
- public void getHost() throws Exception {
- server.getHost();
- }
-
- @Test
- public void getInstanceName() throws Exception {
- server.getInstanceName();
- }
-
- @Test
- public void getHypervisorHostname() throws Exception {
- server.getHypervisorHostname();
- }
-
- @Test
- public void getDiskConfig() throws Exception {
- server.getDiskConfig();
- }
-
- @Test
- public void getAvailabilityZone() throws Exception {
- server.getAvailabilityZone();
- }
-
- @Test
- public void getLaunchedAt() throws Exception {
- server.getLaunchedAt();
- }
-
- @Test
- public void getTerminatedAt() throws Exception {
- server.getTerminatedAt();
- }
-
- @Test
- public void getOsExtendedVolumesAttached() throws Exception {
- server.getOsExtendedVolumesAttached();
- }
-
- @Test
- public void getUuid() throws Exception {
- server.getUuid();
- }
-
- @Test
- public void getAdminPass() throws Exception {
- server.getAdminPass();
- }
-
-} \ No newline at end of file
+ private static final String EOL = System.lineSeparator();
+
+ private static final String JSON_FULL = "{" + EOL
+ + " \"server\" : {" + EOL
+ + " \"id\" : \"id\"," + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"addresses\" : {" + EOL
+ + " \"addresses\" : {" + EOL
+ + " \"addresses-k1\" : [ {" + EOL
+ + " \"version\" : \"version\"," + EOL
+ + " \"addr\" : \"addr\"," + EOL
+ + " \"OS-EXT-IPS-MAC:mac_addr\" : \"macaddr\"," + EOL
+ + " \"OS-EXT-IPS:type\" : \"type\"" + EOL
+ + " }, {" + EOL
+ + " \"version\" : \"version\"," + EOL
+ + " \"addr\" : \"addr\"," + EOL
+ + " \"OS-EXT-IPS-MAC:mac_addr\" : \"macaddr\"," + EOL
+ + " \"OS-EXT-IPS:type\" : \"type\"" + EOL
+ + " } ]," + EOL
+ + " \"addresses-k2\" : [ {" + EOL
+ + " \"version\" : \"version\"," + EOL
+ + " \"addr\" : \"addr\"," + EOL
+ + " \"OS-EXT-IPS-MAC:mac_addr\" : \"macaddr\"," + EOL
+ + " \"OS-EXT-IPS:type\" : \"type\"" + EOL
+ + " }, {" + EOL
+ + " \"version\" : \"version\"," + EOL
+ + " \"addr\" : \"addr\"," + EOL
+ + " \"OS-EXT-IPS-MAC:mac_addr\" : \"macaddr\"," + EOL
+ + " \"OS-EXT-IPS:type\" : \"type\"" + EOL
+ + " } ]" + EOL
+ + " }" + EOL
+ + " }," + EOL
+ + " \"links\" : [ {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " }, {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " } ]," + EOL
+ + " \"image\" : {" + EOL
+ + " \"id\" : \"id\"," + EOL
+ + " \"status\" : \"status\"," + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"progress\" : 3," + EOL
+ + " \"minRam\" : 62," + EOL
+ + " \"minDisk\" : 69," + EOL
+ + " \"created\" : 1485172800000," + EOL
+ + " \"updated\" : 1486468800000," + EOL
+ + " \"metadata\" : {" + EOL
+ + " \"metadata-k1\" : \"metadata-v1\"," + EOL
+ + " \"metadata-k2\" : \"metadata-v2\"" + EOL
+ + " }," + EOL
+ + " \"server\" : {" + EOL
+ + " \"id\" : \"id\"," + EOL
+ + " \"links\" : [ {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " }, {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " } ]" + EOL
+ + " }," + EOL
+ + " \"links\" : [ {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " }, {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " } ]," + EOL
+ + " \"OS-EXT-IMG-SIZE:size\" : 43" + EOL
+ + " }," + EOL
+ + " \"flavor\" : {" + EOL
+ + " \"id\" : \"id\"," + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"vcpus\" : 79," + EOL
+ + " \"ram\" : 38," + EOL
+ + " \"disk\" : 45," + EOL
+ + " \"swap\" : \"swap\"," + EOL
+ + " \"links\" : [ {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " }, {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " } ]," + EOL
+ + " \"public\" : false," + EOL
+ + " \"OS-FLV-EXT-DATA:ephemeral\" : 65," + EOL
+ + " \"rxtx_factor\" : 11.0," + EOL
+ + " \"OS-FLV-DISABLED:disabled\" : true," + EOL
+ + " \"rxtx_quota\" : 42," + EOL
+ + " \"rxtx_cap\" : 96," + EOL
+ + " \"os-flavor-access:is_public\" : false" + EOL
+ + " }," + EOL
+ + " \"accessIPv4\" : \"accessipv4\"," + EOL
+ + " \"accessIPv6\" : \"accessipv6\"," + EOL
+ + " \"status\" : \"status\"," + EOL
+ + " \"progress\" : 3," + EOL
+ + " \"fault\" : {" + EOL
+ + " \"code\" : 29," + EOL
+ + " \"message\" : \"message\"," + EOL
+ + " \"details\" : \"details\"," + EOL
+ + " \"created\" : 1485172800000" + EOL
+ + " }," + EOL
+ + " \"hostId\" : \"hostid\"," + EOL
+ + " \"updated\" : \"updated\"," + EOL
+ + " \"created\" : \"created\"," + EOL
+ + " \"metadata\" : {" + EOL
+ + " \"metadata-k1\" : \"metadata-v1\"," + EOL
+ + " \"metadata-k2\" : \"metadata-v2\"" + EOL
+ + " }," + EOL
+ + " \"uuid\" : \"uuid\"," + EOL
+ + " \"adminPass\" : \"adminpass\"," + EOL
+ + " \"config_drive\" : \"configdrive\"," + EOL
+ + " \"tenant_id\" : \"tenantid\"," + EOL
+ + " \"user_id\" : \"userid\"," + EOL
+ + " \"key_name\" : \"keyname\"," + EOL
+ + " \"security_groups\" : [ {" + EOL
+ + " \"id\" : \"id\"," + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"description\" : \"description\"," + EOL
+ + " \"rules\" : [ {" + EOL
+ + " \"id\" : \"id\"," + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"group\" : {" + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"tenant_id\" : \"tenantid\"" + EOL
+ + " }," + EOL
+ + " \"parent_group_id\" : \"parentgroupid\"," + EOL
+ + " \"from_port\" : 7," + EOL
+ + " \"to_port\" : 98," + EOL
+ + " \"ip_protocol\" : \"ipprotocol\"," + EOL
+ + " \"ip_range\" : {" + EOL
+ + " \"cidr\" : \"cidr\"" + EOL
+ + " }" + EOL
+ + " }, {" + EOL
+ + " \"id\" : \"id\"," + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"group\" : {" + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"tenant_id\" : \"tenantid\"" + EOL
+ + " }," + EOL
+ + " \"parent_group_id\" : \"parentgroupid\"," + EOL
+ + " \"from_port\" : 7," + EOL
+ + " \"to_port\" : 98," + EOL
+ + " \"ip_protocol\" : \"ipprotocol\"," + EOL
+ + " \"ip_range\" : {" + EOL
+ + " \"cidr\" : \"cidr\"" + EOL
+ + " }" + EOL
+ + " } ]," + EOL
+ + " \"links\" : [ {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " }, {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " } ]," + EOL
+ + " \"tenant_id\" : \"tenantid\"" + EOL
+ + " }, {" + EOL
+ + " \"id\" : \"id\"," + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"description\" : \"description\"," + EOL
+ + " \"rules\" : [ {" + EOL
+ + " \"id\" : \"id\"," + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"group\" : {" + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"tenant_id\" : \"tenantid\"" + EOL
+ + " }," + EOL
+ + " \"parent_group_id\" : \"parentgroupid\"," + EOL
+ + " \"from_port\" : 7," + EOL
+ + " \"to_port\" : 98," + EOL
+ + " \"ip_protocol\" : \"ipprotocol\"," + EOL
+ + " \"ip_range\" : {" + EOL
+ + " \"cidr\" : \"cidr\"" + EOL
+ + " }" + EOL
+ + " }, {" + EOL
+ + " \"id\" : \"id\"," + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"group\" : {" + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"tenant_id\" : \"tenantid\"" + EOL
+ + " }," + EOL
+ + " \"parent_group_id\" : \"parentgroupid\"," + EOL
+ + " \"from_port\" : 7," + EOL
+ + " \"to_port\" : 98," + EOL
+ + " \"ip_protocol\" : \"ipprotocol\"," + EOL
+ + " \"ip_range\" : {" + EOL
+ + " \"cidr\" : \"cidr\"" + EOL
+ + " }" + EOL
+ + " } ]," + EOL
+ + " \"links\" : [ {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " }, {" + EOL
+ + " \"rel\" : \"rel\"," + EOL
+ + " \"href\" : \"href\"," + EOL
+ + " \"type\" : \"type\"" + EOL
+ + " } ]," + EOL
+ + " \"tenant_id\" : \"tenantid\"" + EOL
+ + " } ]," + EOL
+ + " \"OS-EXT-STS:task_state\" : \"taskstate\"," + EOL
+ + " \"OS-EXT-STS:power_state\" : \"powerstate\"," + EOL
+ + " \"OS-EXT-STS:vm_state\" : \"vmstate\"," + EOL
+ + " \"OS-EXT-SRV-ATTR:host\" : \"host\"," + EOL
+ + " \"OS-EXT-SRV-ATTR:instance_name\" : \"instancename\"," + EOL
+ + " \"OS-EXT-SRV-ATTR:hypervisor_hostname\" : \"hypervisorhostname\"," + EOL
+ + " \"OS-DCF:diskConfig\" : \"diskconfig\"," + EOL
+ + " \"OS-EXT-AZ:availability_zone\" : \"availabilityzone\"," + EOL
+ + " \"OS-SRV-USG:launched_at\" : \"launchedat\"," + EOL
+ + " \"OS-SRV-USG:terminated_at\" : \"terminatedat\"," + EOL
+ + " \"os-extended-volumes:volumes_attached\" : [ \"osextendedvolumesattached-v1\", \"osextendedvolumesattached-v2\" ]" + EOL
+ + " }" + EOL
+ + "}";
+
+ private ObjectMapper objectMapper = new ObjectMapper()
+ .setSerializationInclusion(Inclusion.NON_NULL)
+ .enable(SerializationConfig.Feature.INDENT_OUTPUT)
+ .enable(SerializationConfig.Feature.WRAP_ROOT_VALUE)
+ .enable(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE)
+ .enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY);
+
+ @Test
+ public void testSerialization() throws Exception {
+ System.out.println("CLASS: " + Server.class.getName());
+ System.out.println("TEST JSON: " + JSON_FULL);
+ Server server = objectMapper.readValue(JSON_FULL, Server.class);
+ String json = objectMapper.writeValueAsString(server);
+ System.out.println("RE-SERIALIZED OBJECT: " + json);
+ JSONAssert.assertEquals(JSON_FULL, json, JSONCompareMode.LENIENT);
+ }
+
+ @Test
+ public void testMethods() throws Exception {
+ Server server = objectMapper.readValue(JSON_FULL, Server.class);
+ server.toString();
+
+ Addresses addresses = server.getAddresses();
+ Assert.assertNotNull(addresses);
+
+ Map<String,String> metadata = server.getMetadata();
+ Assert.assertNotNull(metadata);
+ Assert.assertEquals(2, metadata.size());
+
+ String hostId = server.getHostId();
+ Assert.assertNotNull(hostId);
+
+ String uuid = server.getUuid();
+ Assert.assertNotNull(uuid);
+
+ String userId = server.getUserId();
+ Assert.assertNotNull(userId);
+
+ String taskState = server.getTaskState();
+ Assert.assertNotNull(taskState);
+
+ String powerState = server.getPowerState();
+ Assert.assertNotNull(powerState);
+
+ String vmState = server.getVmState();
+ Assert.assertNotNull(vmState);
+
+ String tenantId = server.getTenantId();
+ Assert.assertNotNull(tenantId);
+
+ String configDrive = server.getConfigDrive();
+ Assert.assertNotNull(configDrive);
+
+ String host = server.getHost();
+ Assert.assertNotNull(host);
+
+ String keyName = server.getKeyName();
+ Assert.assertNotNull(keyName);
+
+ List<Link> links = server.getLinks();
+ Assert.assertNotNull(links);
+ Assert.assertEquals(2, links.size());
+
+ String id = server.getId();
+ Assert.assertNotNull(id);
+
+ String launchedAt = server.getLaunchedAt();
+ Assert.assertNotNull(launchedAt);
+
+ Image image = server.getImage();
+ Assert.assertNotNull(image);
+ server.setImage(image);
+
+ String terminatedAt = server.getTerminatedAt();
+ Assert.assertNotNull(terminatedAt);
+
+ String created = server.getCreated();
+ Assert.assertNotNull(created);
+
+ Fault fault = server.getFault();
+ Assert.assertNotNull(fault);
+
+ String hypervisorHostname = server.getHypervisorHostname();
+ Assert.assertNotNull(hypervisorHostname);
+
+ Flavor flavor = server.getFlavor();
+ Assert.assertNotNull(flavor);
+ server.setFlavor(flavor);
+
+ String instanceName = server.getInstanceName();
+ Assert.assertNotNull(instanceName);
+
+ List<String> osExtendedVolumesAttached = server.getOsExtendedVolumesAttached();
+ Assert.assertNotNull(osExtendedVolumesAttached);
+ Assert.assertEquals(2, osExtendedVolumesAttached.size());
+
+ String name = server.getName();
+ Assert.assertNotNull(name);
+
+ Integer progress = server.getProgress();
+ Assert.assertNotNull(progress);
+
+ String adminPass = server.getAdminPass();
+ Assert.assertNotNull(adminPass);
+
+ String accessIPv6 = server.getAccessIPv6();
+ Assert.assertNotNull(accessIPv6);
+
+ String diskConfig = server.getDiskConfig();
+ Assert.assertNotNull(diskConfig);
+
+ List<SecurityGroup> securityGroups = server.getSecurityGroups();
+ Assert.assertNotNull(securityGroups);
+ Assert.assertEquals(2, securityGroups.size());
+
+ String updated = server.getUpdated();
+ Assert.assertNotNull(updated);
+
+ String availabilityZone = server.getAvailabilityZone();
+ Assert.assertNotNull(availabilityZone);
+
+ String accessIPv4 = server.getAccessIPv4();
+ Assert.assertNotNull(accessIPv4);
+
+ String status = server.getStatus();
+ Assert.assertNotNull(status);
+ }
+}