From 0286e10d3ca141e72afb7e0065daa76556972699 Mon Sep 17 00:00:00 2001 From: vempo Date: Thu, 28 Dec 2017 17:12:44 +0200 Subject: 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 --- .../vendor-license-rest-services/pom.xml | 11 ----- .../rest/mapping/ChoiceOrOtherMappingTest.java | 49 ++++++++++++++++++++++ 2 files changed, 49 insertions(+), 11 deletions(-) create mode 100644 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 (limited to 'openecomp-be/api') 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 @@ - org.apache.maven.plugins maven-surefire-plugin - - - test/core/unittest/offline/** - - - - 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 source = new ChoiceOrOtherDto<>(); + source.setChoice(TestEnum.Yes); + source.setOther(UNKNOWN); + + ChoiceOrOther expected = new ChoiceOrOther<>(TestEnum.Yes, UNKNOWN); + + ChoiceOrOther result = new MapChoiceOrOtherDtoToChoiceOrOther().applyMapping(source, ChoiceOrOther.class); + assertEquals(result, expected); + } + + @Test + public void testApplyMappingToDto() { + + ChoiceOrOther source = new ChoiceOrOther<>(TestEnum.Yes, UNKNOWN); + + ChoiceOrOtherDto 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 -- cgit 1.2.3-korg