summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWeitao Gao <victor.gao@huawei.com>2020-03-06 02:42:48 +0000
committerGerrit Code Review <gerrit@onap.org>2020-03-06 02:42:48 +0000
commitf7fa0ad4ea341b198b038c8bac1a4ee19a367f99 (patch)
tree35b0e1e97dbbee2f7407efc94fbab13ef145923b
parent00789ff1fcfe86456268aa9f3183a39725c3c918 (diff)
parentf584fa72df298521ba05d345b5f27555f7a7f5d1 (diff)
Merge "SVNFM codehaus jackson vulnerability fix"
-rw-r--r--huawei/vnfmadapter/VnfmadapterService/service/pom.xml24
-rw-r--r--huawei/vnfmadapter/VnfmadapterService/service/src/test/java/org/onap/vfc/nfvo/vnfm/svnfm/vnfmadapter/testutils/JsonUtil.java9
-rw-r--r--huawei/vnfmadapter/VnfmadapterService/service/src/test/java/org/onap/vfc/nfvo/vnfm/svnfm/vnfmadapter/testutils/JsonUtilTest.java65
3 files changed, 92 insertions, 6 deletions
diff --git a/huawei/vnfmadapter/VnfmadapterService/service/pom.xml b/huawei/vnfmadapter/VnfmadapterService/service/pom.xml
index 760e8651..51db3044 100644
--- a/huawei/vnfmadapter/VnfmadapterService/service/pom.xml
+++ b/huawei/vnfmadapter/VnfmadapterService/service/pom.xml
@@ -194,6 +194,22 @@
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-jaxrs</artifactId>
<version>1.9.13</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.codehaus.jackson</groupId>
+ <artifactId>jackson-mapper-asl</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ <version>2.10.0</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-core</artifactId>
+ <version>2.10.0</version>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>
@@ -265,11 +281,17 @@
<version>1.18</version>
<scope>test</scope>
</dependency>
- <dependency>
+ <!--dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.1</version>
<scope>test</scope>
+ </dependency-->
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.9</version>
+ <scope>test</scope>
</dependency>
<!-- UT coverage dependency end -->
diff --git a/huawei/vnfmadapter/VnfmadapterService/service/src/test/java/org/onap/vfc/nfvo/vnfm/svnfm/vnfmadapter/testutils/JsonUtil.java b/huawei/vnfmadapter/VnfmadapterService/service/src/test/java/org/onap/vfc/nfvo/vnfm/svnfm/vnfmadapter/testutils/JsonUtil.java
index 2de19983..16427582 100644
--- a/huawei/vnfmadapter/VnfmadapterService/service/src/test/java/org/onap/vfc/nfvo/vnfm/svnfm/vnfmadapter/testutils/JsonUtil.java
+++ b/huawei/vnfmadapter/VnfmadapterService/service/src/test/java/org/onap/vfc/nfvo/vnfm/svnfm/vnfmadapter/testutils/JsonUtil.java
@@ -19,9 +19,9 @@ package org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.testutils;
import java.io.IOException;
-import org.codehaus.jackson.map.DeserializationConfig.Feature;
-import org.codehaus.jackson.map.ObjectMapper;
-import org.codehaus.jackson.type.TypeReference;
+import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.ObjectMapper;
import net.sf.json.JSON;
@@ -45,7 +45,6 @@ public final class JsonUtil {
}
static {
- MAPPER.setDeserializationConfig(
- MAPPER.getDeserializationConfig().without(new Feature[] { Feature.FAIL_ON_UNKNOWN_PROPERTIES }));
+ MAPPER.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES,false);
}
} \ No newline at end of file
diff --git a/huawei/vnfmadapter/VnfmadapterService/service/src/test/java/org/onap/vfc/nfvo/vnfm/svnfm/vnfmadapter/testutils/JsonUtilTest.java b/huawei/vnfmadapter/VnfmadapterService/service/src/test/java/org/onap/vfc/nfvo/vnfm/svnfm/vnfmadapter/testutils/JsonUtilTest.java
new file mode 100644
index 00000000..720e1e19
--- /dev/null
+++ b/huawei/vnfmadapter/VnfmadapterService/service/src/test/java/org/onap/vfc/nfvo/vnfm/svnfm/vnfmadapter/testutils/JsonUtilTest.java
@@ -0,0 +1,65 @@
+/*
+ * Copyright 2016 Huawei Technologies Co., Ltd.
+ *
+ * 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
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.testutils;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.onap.vfc.nfvo.vnfm.svnfm.vnfmadapter.service.entity.Vnfm;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
+
+import static org.junit.Assert.assertEquals;
+
+public class JsonUtilTest {
+
+ Vnfm vnfm;
+
+ @Before
+ public void setUp(){
+ vnfm = new Vnfm();
+ }
+
+ @Test
+ public void testMarshal() throws IOException {
+ vnfm.setId("123");
+ vnfm.setVersion("V1.0.0");
+ JsonUtil.marshal(vnfm);
+ assertEquals("123",vnfm.getId());
+ }
+
+ @Test
+ public void testUnMarshal() throws IOException {
+ String jsonValue="{\"id\":\"12345\",\"version\":\"V1.0.0\"}";
+ Vnfm actual = JsonUtil.unMarshal(jsonValue,Vnfm.class);
+ assertEquals("V1.0.0",actual.getVersion());
+ }
+ @Test
+ public void testUnMarshalWithUnknownField() throws IOException {
+ String jsonValue="{\"id\":\"12345\",\"version\":\"V1.0.0\",\"unknownField\":\"unknownValue\"}";
+ Vnfm actual = JsonUtil.unMarshal(jsonValue,Vnfm.class);
+ assertEquals("V1.0.0",actual.getVersion());
+ }
+ @Test
+ public void testUnMarshalForTypeReference() throws IOException {
+ String jsonValue="{\"id\":\"12345\",\"version\":\"V1.0.0\",\"unknownField\":\"unknownValue\"}";
+ Map map = JsonUtil.unMarshal(jsonValue, HashMap.class);
+ assertEquals("V1.0.0",map.get("version"));
+ }
+}