summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorvempo <vitaliy.emporopulo@amdocs.com>2017-12-28 17:12:44 +0200
committerVitaly Emporopulo <Vitaliy.Emporopulo@amdocs.com>2017-12-28 17:10:36 +0000
commit0286e10d3ca141e72afb7e0065daa76556972699 (patch)
treedb40e0319dfac1e1cbcc71da922ee52533314fc6
parent5eb00848f99758f1cb05a7336824d4963c5468c3 (diff)
Fixed broken mapping of ChoiceOrOther
ChoiceOrOther needs default constructor to be recreated by reflection Change-Id: I194ced8b5e6a60f0dbe6f9b73715cd36c70f5163 Issue-ID: SDC-830 Signed-off-by: vempo <vitaliy.emporopulo@amdocs.com>
-rw-r--r--openecomp-be/api/openecomp-sdc-rest-webapp/vendor-license-rest/vendor-license-rest-services/pom.xml11
-rw-r--r--openecomp-be/api/openecomp-sdc-rest-webapp/vendor-license-rest/vendor-license-rest-services/src/test/java/org/openecomp/sdcrests/vendorlicense/rest/mapping/ChoiceOrOtherMappingTest.java49
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/ChoiceOrOther.java4
3 files changed, 53 insertions, 11 deletions
diff --git a/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-license-rest/vendor-license-rest-services/pom.xml b/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-license-rest/vendor-license-rest-services/pom.xml
index cec09f0e8f..7934900e5d 100644
--- a/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-license-rest/vendor-license-rest-services/pom.xml
+++ b/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-license-rest/vendor-license-rest-services/pom.xml
@@ -113,23 +113,12 @@
</dependencies>
-
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <includes>
- <include>test/core/unittest/offline/**</include>
- </includes>
- </configuration>
</plugin>
- <!-- Error codes generator plugin -->
- <!--plugin>
- <groupId>org.openecomp.nfv.tools</groupId>
- <artifactId>error-codes-maven-plugin</artifactId>
- </plugin-->
</plugins>
</build>
diff --git a/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-license-rest/vendor-license-rest-services/src/test/java/org/openecomp/sdcrests/vendorlicense/rest/mapping/ChoiceOrOtherMappingTest.java b/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-license-rest/vendor-license-rest-services/src/test/java/org/openecomp/sdcrests/vendorlicense/rest/mapping/ChoiceOrOtherMappingTest.java
new file mode 100644
index 0000000000..30a0922bd9
--- /dev/null
+++ b/openecomp-be/api/openecomp-sdc-rest-webapp/vendor-license-rest/vendor-license-rest-services/src/test/java/org/openecomp/sdcrests/vendorlicense/rest/mapping/ChoiceOrOtherMappingTest.java
@@ -0,0 +1,49 @@
+package org.openecomp.sdcrests.vendorlicense.rest.mapping;
+
+import org.openecomp.sdc.vendorlicense.dao.types.ChoiceOrOther;
+import org.openecomp.sdcrests.vendorlicense.types.ChoiceOrOtherDto;
+import org.testng.annotations.Test;
+
+import static org.testng.Assert.assertEquals;
+
+/**
+ * Any change to ChoiceOrOther easily break reconstruction of objects of this type.
+ * This test protects from such accidental changes.
+ *
+ * @author EVITALIY
+ * @since 28 Dec 17
+ */
+public class ChoiceOrOtherMappingTest {
+
+ private static final String UNKNOWN = "Unknown";
+
+ public enum TestEnum {
+ Yes
+ }
+
+ @Test
+ public void testApplyMappingFromDto() {
+
+ ChoiceOrOtherDto<TestEnum> source = new ChoiceOrOtherDto<>();
+ source.setChoice(TestEnum.Yes);
+ source.setOther(UNKNOWN);
+
+ ChoiceOrOther<TestEnum> expected = new ChoiceOrOther<>(TestEnum.Yes, UNKNOWN);
+
+ ChoiceOrOther result = new MapChoiceOrOtherDtoToChoiceOrOther().applyMapping(source, ChoiceOrOther.class);
+ assertEquals(result, expected);
+ }
+
+ @Test
+ public void testApplyMappingToDto() {
+
+ ChoiceOrOther<TestEnum> source = new ChoiceOrOther<>(TestEnum.Yes, UNKNOWN);
+
+ ChoiceOrOtherDto<TestEnum> expected = new ChoiceOrOtherDto<>();
+ expected.setChoice(TestEnum.Yes);
+ expected.setOther(UNKNOWN);
+
+ ChoiceOrOtherDto result = new MapChoiceOrOtherToChoiceOrOtherDto().applyMapping(source, ChoiceOrOtherDto.class);
+ assertEquals(result, expected);
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/ChoiceOrOther.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/ChoiceOrOther.java
index 436a000e49..ce39ac62c9 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/ChoiceOrOther.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/ChoiceOrOther.java
@@ -45,6 +45,10 @@ public class ChoiceOrOther<E extends Enum<E>> {
private String result;
+ public ChoiceOrOther() {
+ // the default constructor is used to instantiate by reflection
+ }
+
/**
* Instantiates a new Choice or other.
*