From e794b73443f37d92ea122336324e17709824df9d Mon Sep 17 00:00:00 2001 From: "Tufman, Shay" Date: Tue, 20 Nov 2018 14:48:55 +0200 Subject: fix null pointer Change-Id: If530734b96c32b25b2ed5df847c83dca2c633184 Issue-ID: SDC-1926 Signed-off-by: Tufman, Shay --- pom.xml | 2 +- .../java/org/onap/sdc/toscaparser/api/DataEntity.java | 8 +++++--- .../org/onap/sdc/toscaparser/api/JToscaImportTest.java | 10 ++++++++++ .../csars/service-JennyVtsbcKarunaSvc-csar.csar | Bin 0 -> 145639 bytes version.properties | 2 +- 5 files changed, 17 insertions(+), 5 deletions(-) create mode 100644 src/test/resources/csars/service-JennyVtsbcKarunaSvc-csar.csar diff --git a/pom.xml b/pom.xml index c25d8a7..20a4dc3 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ org.onap.sdc.jtosca jtosca - 1.4.6-SNAPSHOT + 1.4.7-SNAPSHOT sdc-jtosca diff --git a/src/main/java/org/onap/sdc/toscaparser/api/DataEntity.java b/src/main/java/org/onap/sdc/toscaparser/api/DataEntity.java index 2a12a71..1559e66 100644 --- a/src/main/java/org/onap/sdc/toscaparser/api/DataEntity.java +++ b/src/main/java/org/onap/sdc/toscaparser/api/DataEntity.java @@ -49,9 +49,11 @@ public class DataEntity { else { if(!(value instanceof LinkedHashMap)) { //ERROR under investigation - ThreadLocalsHolder.getCollector().appendValidationIssue(new JToscaValidationIssue("JE001", String.format( - "TypeMismatchError: \"%s\" is not a map. The type is \"%s\"", - value.toString(),dataType.getType()))); + String checkedVal = value != null ? value.toString() : null; + + ThreadLocalsHolder.getCollector().appendValidationIssue(new JToscaValidationIssue("JE001", String.format( + "TypeMismatchError: \"%s\" is not a map. The type is \"%s\"", + checkedVal, dataType.getType()))); if (value instanceof List && ((List) value).size() > 0) { value = ((List) value).get(0); diff --git a/src/test/java/org/onap/sdc/toscaparser/api/JToscaImportTest.java b/src/test/java/org/onap/sdc/toscaparser/api/JToscaImportTest.java index 6fc8771..8e587a9 100644 --- a/src/test/java/org/onap/sdc/toscaparser/api/JToscaImportTest.java +++ b/src/test/java/org/onap/sdc/toscaparser/api/JToscaImportTest.java @@ -111,6 +111,16 @@ public class JToscaImportTest { assertNull(nodeTemplate.getPropertyValueFromTemplatesByName("test")); } + @Test + public void testNullValueHasNoNullPointerException() throws JToscaException { + + String fileStr = JToscaImportTest.class.getClassLoader().getResource("csars/service-JennyVtsbcKarunaSvc-csar.csar").getFile(); + File file = new File(fileStr); + ToscaTemplate toscaTemplate = new ToscaTemplate(file.getAbsolutePath(), null, true, null); + List inputs = toscaTemplate.getInputs(); + assertNotNull(inputs); + } + private void validateInputsAnnotations(List inputs) { List inputsWithAnnotations = inputs.stream().filter(i -> i.getAnnotations() != null) .collect(Collectors.toList()); diff --git a/src/test/resources/csars/service-JennyVtsbcKarunaSvc-csar.csar b/src/test/resources/csars/service-JennyVtsbcKarunaSvc-csar.csar new file mode 100644 index 0000000..3f80621 Binary files /dev/null and b/src/test/resources/csars/service-JennyVtsbcKarunaSvc-csar.csar differ diff --git a/version.properties b/version.properties index ed1cd82..442dce4 100644 --- a/version.properties +++ b/version.properties @@ -5,7 +5,7 @@ major=1 minor=4 -patch=6 +patch=7 base_version=${major}.${minor}.${patch} -- cgit 1.2.3-korg