Fix sonar for MapEntry
[so.git] / adapters / mso-adapters-rest-interface / src / test / java / org / onap / so / openstack / mappers / JAXBMarshallingTest.java
index 038e883..19dbcad 100644 (file)
@@ -4,6 +4,8 @@
  * ================================================================================
  * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
+ * Modifications Copyright (c) 2019 Samsung
+ * ================================================================================
  * 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
 package org.onap.so.openstack.mappers;
 
 import static org.junit.Assert.assertEquals;
-
 import java.io.IOException;
 import java.nio.file.Files;
 import java.nio.file.Paths;
-
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
 import javax.xml.bind.JAXBContext;
 import javax.xml.bind.JAXBException;
-
 import org.junit.Test;
 import org.onap.so.adapters.vnfrest.CreateVfModuleRequest;
 
@@ -36,16 +38,35 @@ import org.onap.so.adapters.vnfrest.CreateVfModuleRequest;
 public class JAXBMarshallingTest {
 
 
-       @Test
-       public void xmlMarshalTest() throws IOException, JAXBException {
-               JAXBContext context = JAXBContext.newInstance(CreateVfModuleRequest.class);
+    @Test
+    public void xmlUnMarshalTest() throws IOException, JAXBException {
+        JAXBContext context = JAXBContext.newInstance(CreateVfModuleRequest.class);
+
+        CreateVfModuleRequest request = (CreateVfModuleRequest) context.createUnmarshaller().unmarshal(
+                Files.newBufferedReader(Paths.get("src/test/resources/createVfModuleRequest-with-params.xml")));
+
+        assertEquals("ubuntu-16-04-cloud-amd64", request.getVfModuleParams().get("vcpe_image_name"));
+        assertEquals("10.2.0.0/24", request.getVfModuleParams().get("cpe_public_net_cidr"));
+        assertEquals("", request.getVfModuleParams().get("workload_context"));
+        assertEquals("[\"a\",\"b\",\"c\"]", request.getVfModuleParams().get("raw-json-param"));
+    }
+
+    @Test
+    public void xmlMarshalTest() throws IOException, JAXBException {
 
-               CreateVfModuleRequest request = (CreateVfModuleRequest) context.createUnmarshaller().unmarshal(Files.newBufferedReader(Paths.get("src/test/resources/createVfModuleRequest-with-params.xml")));
+        CreateVfModuleRequest request = new CreateVfModuleRequest();
+        request.getVfModuleParams().put("test-null", null);
+        request.getVfModuleParams().put("vcpe_image_name", "ubuntu-16-04-cloud-amd64");
+        request.getVfModuleParams().put("test-empty", "");
+        request.getVfModuleParams().put("test array", Arrays.asList("a", "b", "c"));
+        request.getVfModuleParams().put("test map", Collections.singletonMap("d", "e"));
+        request.getVfModuleParams().put("marshalling error", new ArrayList());
 
-               assertEquals("ubuntu-16-04-cloud-amd64", request.getVfModuleParams().get("vcpe_image_name"));
-               assertEquals("10.2.0.0/24", request.getVfModuleParams().get("cpe_public_net_cidr"));
-               assertEquals("", request.getVfModuleParams().get("workload_context"));
+        assertEquals("documents should be equal",
+                new String(Files
+                        .readAllBytes(Paths.get("src/test/resources/VfRequest-marshalled-with-complex-object.xml"))),
+                request.toXmlString());
 
-       }
+    }
 
 }