summaryrefslogtreecommitdiffstats
path: root/ceilometer-model
diff options
context:
space:
mode:
authorRob Daugherty <rd472p@att.com>2018-09-10 17:45:52 -0400
committerRob Daugherty <rd472p@att.com>2018-09-10 17:53:28 -0400
commit9e0219abc61b28b94d88fefbf8cc4a13d1683a67 (patch)
tree2e1e76e80bcea8c398d2a22851dce66680e68352 /ceilometer-model
parent77ba0e5627d39af1459cf3058fb521e68b475220 (diff)
Functional so/libs unit tests
Unit tests to prepare for migration from the codehaus to the fasterxml implementation of jackson. Iincreases the code coverage metric from 51% to 70%. Change-Id: I6338214f3de9df95956b46d4e313d00052eb8692 Issue-ID: SO-1011 Signed-off-by: Rob Daugherty <rd472p@att.com>
Diffstat (limited to 'ceilometer-model')
-rw-r--r--ceilometer-model/pom.xml6
-rw-r--r--ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/MeterTest.java80
-rw-r--r--ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/ResourceTest.java76
-rw-r--r--ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/SampleTest.java130
-rw-r--r--ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/StatisticsTest.java126
5 files changed, 264 insertions, 154 deletions
diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml
index b6f2a8f..a86b621 100644
--- a/ceilometer-model/pom.xml
+++ b/ceilometer-model/pom.xml
@@ -14,7 +14,11 @@
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>4.12</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.skyscreamer</groupId>
+ <artifactId>jsonassert</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
diff --git a/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/MeterTest.java b/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/MeterTest.java
index e8ac582..97bb2af 100644
--- a/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/MeterTest.java
+++ b/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/MeterTest.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,42 +17,68 @@
* limitations under the License.
* ============LICENSE_END=========================================================
*/
+
package com.woorea.openstack.ceilometer.v2.model;
+import com.woorea.openstack.ceilometer.v2.model.Meter;
+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 MeterTest {
- Meter meter = new Meter();
+ private static final String EOL = System.lineSeparator();
- @Test
- public void getUserTest() throws Exception {
- meter.getUser();
- }
+ private static final String JSON_FULL = "{" + EOL
+ + " \"name\" : \"name\"," + EOL
+ + " \"type\" : \"type\"," + EOL
+ + " \"unit\" : \"unit\"," + EOL
+ + " \"user_id\" : \"user\"," + EOL
+ + " \"resource_id\" : \"resource\"," + EOL
+ + " \"project_id\" : \"project\"" + EOL
+ + "}";
- @Test
- public void getNameTest() throws Exception {
- meter.getName();
- }
+ private ObjectMapper objectMapper = new ObjectMapper()
+ .setSerializationInclusion(Inclusion.NON_NULL)
+ .enable(SerializationConfig.Feature.INDENT_OUTPUT)
+ .enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY);
@Test
- public void getResource() throws Exception {
- meter.getResource();
+ public void testSerialization() throws Exception {
+ System.out.println("CLASS: " + Meter.class.getName());
+ System.out.println("TEST JSON: " + JSON_FULL);
+ Meter meter = objectMapper.readValue(JSON_FULL, Meter.class);
+ String json = objectMapper.writeValueAsString(meter);
+ System.out.println("RE-SERIALIZED OBJECT: " + json);
+ JSONAssert.assertEquals(JSON_FULL, json, JSONCompareMode.LENIENT);
}
@Test
- public void getProjectTest() throws Exception {
- meter.getProject();
+ public void testMethods() throws Exception {
+ Meter meter = objectMapper.readValue(JSON_FULL, Meter.class);
+ meter.toString();
+
+ String unit = meter.getUnit();
+ Assert.assertNotNull(unit);
+
+ String resource = meter.getResource();
+ Assert.assertNotNull(resource);
+
+ String name = meter.getName();
+ Assert.assertNotNull(name);
+
+ String project = meter.getProject();
+ Assert.assertNotNull(project);
+
+ String type = meter.getType();
+ Assert.assertNotNull(type);
+
+ String user = meter.getUser();
+ Assert.assertNotNull(user);
}
-
- @Test
- public void getTypeTest() throws Exception {
- meter.getType();
- }
-
- @Test
- public void getUnitTest() throws Exception {
- meter.getUnit();
- }
-
-} \ No newline at end of file
+}
diff --git a/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/ResourceTest.java b/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/ResourceTest.java
index 13a75df..10b361e 100644
--- a/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/ResourceTest.java
+++ b/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/ResourceTest.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,37 +17,69 @@
* limitations under the License.
* ============LICENSE_END=========================================================
*/
+
package com.woorea.openstack.ceilometer.v2.model;
+import com.woorea.openstack.ceilometer.v2.model.Resource;
+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 ResourceTest {
- Resource resource = new Resource();
-
- @Test
- public void getResourceTest() throws Exception {
- resource.getResource();
- }
+ private static final String EOL = System.lineSeparator();
- @Test
- public void getTimestampTest() throws Exception {
- resource.getTimestamp();
- }
+ private static final String JSON_FULL = "{" + EOL
+ + " \"timestamp\" : \"timestamp\"," + EOL
+ + " \"metadata\" : {" + EOL
+ + " \"metadata-k1\" : \"metadata-v1\"," + EOL
+ + " \"metadata-k2\" : \"metadata-v2\"" + EOL
+ + " }," + EOL
+ + " \"resource_id\" : \"resource\"," + EOL
+ + " \"project_id\" : \"project\"," + EOL
+ + " \"user_id\" : \"user\"" + EOL
+ + "}";
- @Test
- public void getProjectTest() throws Exception {
- resource.getProject();
- }
+ private ObjectMapper objectMapper = new ObjectMapper()
+ .setSerializationInclusion(Inclusion.NON_NULL)
+ .enable(SerializationConfig.Feature.INDENT_OUTPUT)
+ .enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY);
@Test
- public void getUserTest() throws Exception {
- resource.getUser();
+ public void testSerialization() throws Exception {
+ System.out.println("CLASS: " + Resource.class.getName());
+ System.out.println("TEST JSON: " + JSON_FULL);
+ Resource resource = objectMapper.readValue(JSON_FULL, Resource.class);
+ String json = objectMapper.writeValueAsString(resource);
+ System.out.println("RE-SERIALIZED OBJECT: " + json);
+ JSONAssert.assertEquals(JSON_FULL, json, JSONCompareMode.LENIENT);
}
@Test
- public void getMetadataTest() throws Exception {
- resource.getMetadata();
+ public void testMethods() throws Exception {
+ Resource resource = objectMapper.readValue(JSON_FULL, Resource.class);
+ resource.toString();
+
+ Map<String,Object> metadata = resource.getMetadata();
+ Assert.assertNotNull(metadata);
+ Assert.assertEquals(2, metadata.size());
+
+ String resourceProperty = resource.getResource();
+ Assert.assertNotNull(resourceProperty);
+
+ String project = resource.getProject();
+ Assert.assertNotNull(project);
+
+ String user = resource.getUser();
+ Assert.assertNotNull(user);
+
+ String timestamp = resource.getTimestamp();
+ Assert.assertNotNull(timestamp);
}
-
-} \ No newline at end of file
+}
diff --git a/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/SampleTest.java b/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/SampleTest.java
index ed89c3b..fa8325e 100644
--- a/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/SampleTest.java
+++ b/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/SampleTest.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,67 +17,93 @@
* limitations under the License.
* ============LICENSE_END=========================================================
*/
+
package com.woorea.openstack.ceilometer.v2.model;
+import com.woorea.openstack.ceilometer.v2.model.Sample;
+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 SampleTest {
- Sample sample = new Sample();
-
- @Test
- public void getCounterTypeTest() throws Exception {
- sample.getCounterType();
- }
-
- @Test
- public void getCounterNameTest() throws Exception {
- sample.getCounterName();
- }
-
- @Test
- public void getCounterUnitTest() throws Exception {
- sample.getCounterUnit();
- }
-
- @Test
- public void getCounterVolumeTest() throws Exception {
- sample.getCounterVolume();
- }
-
- @Test
- public void getSourceTest() throws Exception {
- sample.getSource();
- }
-
- @Test
- public void getProjectTest() throws Exception {
- sample.getProject();
- }
-
- @Test
- public void getUserTest() throws Exception {
- sample.getUser();
- }
+ private static final String EOL = System.lineSeparator();
- @Test
- public void getResourceTest() throws Exception {
- sample.getResource();
- }
+ private static final String JSON_FULL = "{" + EOL
+ + " \"source\" : \"source\"," + EOL
+ + " \"timestamp\" : \"timestamp\"," + EOL
+ + " \"counter_type\" : \"countertype\"," + EOL
+ + " \"counter_name\" : \"countername\"," + EOL
+ + " \"counter_unit\" : \"counterunit\"," + EOL
+ + " \"counter_volume\" : \"countervolume\"," + EOL
+ + " \"project_id\" : \"project\"," + EOL
+ + " \"user_id\" : \"user\"," + EOL
+ + " \"resource_id\" : \"resource\"," + EOL
+ + " \"message_id\" : \"message\"," + EOL
+ + " \"resource_metadata\" : {" + EOL
+ + " \"metadata-k1\" : \"metadata-v1\"," + EOL
+ + " \"metadata-k2\" : \"metadata-v2\"" + EOL
+ + " }" + EOL
+ + "}";
- @Test
- public void getTimestampTest() throws Exception {
- sample.getTimestamp();
- }
+ private ObjectMapper objectMapper = new ObjectMapper()
+ .setSerializationInclusion(Inclusion.NON_NULL)
+ .enable(SerializationConfig.Feature.INDENT_OUTPUT)
+ .enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY);
@Test
- public void getMessageTest() throws Exception {
- sample.getMessage();
+ public void testSerialization() throws Exception {
+ System.out.println("CLASS: " + Sample.class.getName());
+ System.out.println("TEST JSON: " + JSON_FULL);
+ Sample sample = objectMapper.readValue(JSON_FULL, Sample.class);
+ String json = objectMapper.writeValueAsString(sample);
+ System.out.println("RE-SERIALIZED OBJECT: " + json);
+ JSONAssert.assertEquals(JSON_FULL, json, JSONCompareMode.LENIENT);
}
@Test
- public void getMetadataTest() throws Exception {
- sample.getMetadata();
+ public void testMethods() throws Exception {
+ Sample sample = objectMapper.readValue(JSON_FULL, Sample.class);
+ sample.toString();
+
+ String counterName = sample.getCounterName();
+ Assert.assertNotNull(counterName);
+
+ Map<String,Object> metadata = sample.getMetadata();
+ Assert.assertNotNull(metadata);
+ Assert.assertEquals(2, metadata.size());
+
+ String resource = sample.getResource();
+ Assert.assertNotNull(resource);
+
+ String counterVolume = sample.getCounterVolume();
+ Assert.assertNotNull(counterVolume);
+
+ String project = sample.getProject();
+ Assert.assertNotNull(project);
+
+ String counterUnit = sample.getCounterUnit();
+ Assert.assertNotNull(counterUnit);
+
+ String source = sample.getSource();
+ Assert.assertNotNull(source);
+
+ String counterType = sample.getCounterType();
+ Assert.assertNotNull(counterType);
+
+ String message = sample.getMessage();
+ Assert.assertNotNull(message);
+
+ String user = sample.getUser();
+ Assert.assertNotNull(user);
+
+ String timestamp = sample.getTimestamp();
+ Assert.assertNotNull(timestamp);
}
-
-} \ No newline at end of file
+}
diff --git a/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/StatisticsTest.java b/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/StatisticsTest.java
index a911bbb..d3e7597 100644
--- a/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/StatisticsTest.java
+++ b/ceilometer-model/src/test/java/com/woorea/openstack/ceilometer/v2/model/StatisticsTest.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,67 +17,89 @@
* limitations under the License.
* ============LICENSE_END=========================================================
*/
+
package com.woorea.openstack.ceilometer.v2.model;
+import com.woorea.openstack.ceilometer.v2.model.Statistics;
+import java.math.BigDecimal;
+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 StatisticsTest {
- Statistics statistics = new Statistics();
-
- @Test
- public void getAvgTest() throws Exception {
- statistics.getAvg();
- }
-
- @Test
- public void getCountTest() throws Exception {
- statistics.getCount();
- }
-
- @Test
- public void getDurationTest() throws Exception {
- statistics.getDuration();
- }
-
- @Test
- public void getDurationStartTest() throws Exception {
- statistics.getDurationStart();
- }
-
- @Test
- public void getDurationEndTest() throws Exception {
- statistics.getDurationEnd();
- }
-
- @Test
- public void getMaxTest() throws Exception {
- statistics.getMax();
- }
-
- @Test
- public void getMinTest() throws Exception {
- statistics.getMin();
- }
+ private static final String EOL = System.lineSeparator();
- @Test
- public void getPeriodTest() throws Exception {
- statistics.getPeriod();
- }
+ private static final String JSON_FULL = "{" + EOL
+ + " \"avg\" : 79," + EOL
+ + " \"count\" : 14," + EOL
+ + " \"duration\" : 31," + EOL
+ + " \"max\" : 87," + EOL
+ + " \"min\" : 85," + EOL
+ + " \"period\" : 4," + EOL
+ + " \"sum\" : 2," + EOL
+ + " \"duration_start\" : \"durationstart\"," + EOL
+ + " \"duration_end\" : \"durationend\"," + EOL
+ + " \"period_start\" : \"periodstart\"," + EOL
+ + " \"period_end\" : \"periodend\"" + EOL
+ + "}";
- @Test
- public void getPeriodStartTest() throws Exception {
- statistics.getPeriodStart();
- }
+ private ObjectMapper objectMapper = new ObjectMapper()
+ .setSerializationInclusion(Inclusion.NON_NULL)
+ .enable(SerializationConfig.Feature.INDENT_OUTPUT)
+ .enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY);
@Test
- public void getPeriodEndTest() throws Exception {
- statistics.getPeriodEnd();
+ public void testSerialization() throws Exception {
+ System.out.println("CLASS: " + Statistics.class.getName());
+ System.out.println("TEST JSON: " + JSON_FULL);
+ Statistics statistics = objectMapper.readValue(JSON_FULL, Statistics.class);
+ String json = objectMapper.writeValueAsString(statistics);
+ System.out.println("RE-SERIALIZED OBJECT: " + json);
+ JSONAssert.assertEquals(JSON_FULL, json, JSONCompareMode.LENIENT);
}
@Test
- public void getSumTest() throws Exception {
- statistics.getSum();
+ public void testMethods() throws Exception {
+ Statistics statistics = objectMapper.readValue(JSON_FULL, Statistics.class);
+ statistics.toString();
+
+ BigDecimal duration = statistics.getDuration();
+ Assert.assertNotNull(duration);
+
+ BigDecimal period = statistics.getPeriod();
+ Assert.assertNotNull(period);
+
+ BigDecimal avg = statistics.getAvg();
+ Assert.assertNotNull(avg);
+
+ BigDecimal min = statistics.getMin();
+ Assert.assertNotNull(min);
+
+ String durationStart = statistics.getDurationStart();
+ Assert.assertNotNull(durationStart);
+
+ BigDecimal max = statistics.getMax();
+ Assert.assertNotNull(max);
+
+ String durationEnd = statistics.getDurationEnd();
+ Assert.assertNotNull(durationEnd);
+
+ BigDecimal count = statistics.getCount();
+ Assert.assertNotNull(count);
+
+ BigDecimal sum = statistics.getSum();
+ Assert.assertNotNull(sum);
+
+ String periodStart = statistics.getPeriodStart();
+ Assert.assertNotNull(periodStart);
+
+ String periodEnd = statistics.getPeriodEnd();
+ Assert.assertNotNull(periodEnd);
}
-
-} \ No newline at end of file
+}