update field in service decomp object 81/62081/1
authorBenjamin, Max (mb388a) <mb388a@us.att.com>
Thu, 23 Aug 2018 12:31:42 +0000 (08:31 -0400)
committerBenjamin, Max (mb388a) <mb388a@us.att.com>
Thu, 23 Aug 2018 12:37:39 +0000 (08:37 -0400)
removed duplicate json test file and updated existing
update ServiceDecompoition serviceNetworks field

Change-Id: Iea3dc7efe4edb8ba32e45772fd9d77d9e7fc0ef6
Issue-ID: SO-887
Signed-off-by: Benjamin, Max (mb388a) <mb388a@us.att.com>
bpmn/MSOCommonBPMN/src/test/groovy/org/onap/so/bpmn/common/scripts/DecomposeServiceTest.groovy [new file with mode: 0644]
bpmn/MSOCommonBPMN/src/test/resources/__files/decomposition/catalogDbResponse.json [new file with mode: 0644]
bpmn/MSOCoreBPMN/src/main/java/org/onap/so/bpmn/core/domain/ServiceDecomposition.java
bpmn/MSOCoreBPMN/src/test/java/org/onap/so/bpmn/core/domain/ServiceDecompositionTest.java
bpmn/MSOCoreBPMN/src/test/resources/json-examples/ServiceDecompositionExpected.json

diff --git a/bpmn/MSOCommonBPMN/src/test/groovy/org/onap/so/bpmn/common/scripts/DecomposeServiceTest.groovy b/bpmn/MSOCommonBPMN/src/test/groovy/org/onap/so/bpmn/common/scripts/DecomposeServiceTest.groovy
new file mode 100644 (file)
index 0000000..5deec5b
--- /dev/null
@@ -0,0 +1,76 @@
+/*- 
+ * ============LICENSE_START======================================================= 
+ * ONAP - SO 
+ * ================================================================================ 
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. 
+ * ================================================================================ 
+ * 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. 
+ * ============LICENSE_END========================================================= 
+ */ 
+
+package org.onap.so.bpmn.common.scripts
+
+import org.junit.Before
+import org.mockito.MockitoAnnotations
+import org.onap.so.bpmn.core.domain.ModelInfo
+import org.onap.so.bpmn.core.domain.NetworkResource
+import org.onap.so.bpmn.core.domain.ServiceDecomposition
+import org.onap.so.bpmn.core.json.DecomposeJsonUtil
+import org.onap.so.bpmn.core.domain.ServiceInstance
+
+import org.onap.so.bpmn.mock.FileUtil
+import static org.mockito.Mockito.*
+import org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity
+import static org.junit.Assert.*;
+import org.junit.Test;
+import static com.shazam.shazamcrest.MatcherAssert.assertThat;
+import static com.shazam.shazamcrest.matcher.Matchers.sameBeanAs;
+
+class DecomposeServiceTest {
+       
+       @Test
+       public void testDecomposeService() {
+               
+               String catalogDbResponse = FileUtil.readResourceFile("__files/decomposition/catalogDbResponse.json");
+               
+               ServiceDecomposition serviceDecomposition = new ServiceDecomposition();
+               ServiceInstance serviceInstance = new ServiceInstance();
+               serviceInstance.setInstanceId("serviceInstanceID");
+               serviceDecomposition.setServiceType("");
+               serviceDecomposition.setServiceRole("");
+               
+               ArrayList networkResources = new ArrayList();
+               NetworkResource networkResource = new NetworkResource();
+               networkResource.setNetworkType("testNetworkType");
+               networkResource.setNetworkRole("testNetworkRole");
+               networkResource.setNetworkScope("testNetworkScope");
+               networkResource.setToscaNodeType("testToscaModelType")
+               networkResource.setNetworkTechnology("testNetworkTechnology");
+               ModelInfo modelInfo = new ModelInfo();
+               modelInfo.setModelName("testModleName");
+               modelInfo.setModelUuid("testModelUuid")
+               modelInfo.setModelInvariantUuid("testModelInvariantId")
+               modelInfo.setModelVersion("testModelVersion");
+               modelInfo.setModelCustomizationUuid("testModelCustomizationUuid");
+               modelInfo.setModelInstanceName("testModelInstanceName");
+               networkResource.setModelInfo(modelInfo);
+               
+               networkResources.add(networkResource);
+               serviceDecomposition.setNetworkResources(networkResources)
+               serviceDecomposition.setServiceInstance(serviceInstance);
+               
+               ServiceDecomposition serviceDecompositionExtracted = DecomposeJsonUtil.jsonToServiceDecomposition(catalogDbResponse, "serviceInstanceID")
+               
+               assertThat(serviceDecompositionExtracted, sameBeanAs(serviceDecomposition).ignoring("modelInfo").ignoring("vnfResources").ignoring("allottedResources").ignoring("networkResources.resourceId"));
+       }
+}
diff --git a/bpmn/MSOCommonBPMN/src/test/resources/__files/decomposition/catalogDbResponse.json b/bpmn/MSOCommonBPMN/src/test/resources/__files/decomposition/catalogDbResponse.json
new file mode 100644 (file)
index 0000000..087233d
--- /dev/null
@@ -0,0 +1,33 @@
+{
+  "serviceResources": {
+    "serviceType": "",
+    "workloadContext": "testWorkloadContext",
+    "serviceAllottedResources": [],
+    "modelInfo": {
+      "modelInvariantUuid": "testModelInvariantId",
+      "modelName": "testModleName",
+      "modelVersion": "testModelVersion",
+      "modelUuid": "testModelUuid"
+    },
+    "environmentContext": "testEnvironmentContent",
+    "serviceRole": "",
+    "serviceVnfs": [],
+    "serviceNetworks": [
+      {
+        "toscaNodeType": "testToscaModelType",
+        "networkTechnology": "testNetworkTechnology",
+        "networkScope": "testNetworkScope",
+        "modelInfo": {
+          "modelInvariantUuid": "testModelInvariantId",
+          "modelName": "testModleName",
+          "modelVersion": "testModelVersion",
+          "modelCustomizationUuid": "testModelCustomizationUuid",
+          "modelInstanceName": "testModelInstanceName",
+          "modelUuid": "testModelUuid"
+        },
+        "networkRole": "testNetworkRole",
+        "networkType": "testNetworkType"
+      }
+    ]
+  }
+}
\ No newline at end of file
index 099f084..5e7a479 100644 (file)
@@ -69,7 +69,7 @@ public class ServiceDecomposition extends JsonWrapper implements Serializable {
        private OwningEntity owningEntity;
        @JsonProperty("serviceVnfs")
        private List <VnfResource> vnfResources;
-       @JsonProperty("networkResource")
+       @JsonProperty("serviceNetworks")
        private List <NetworkResource> networkResources;
        @JsonProperty("serviceAllottedResources")
        private List <AllottedResource> allottedResources;
index 82470f1..5d8d551 100644 (file)
@@ -103,6 +103,8 @@ public class ServiceDecompositionTest {
                serviceDecomp.addResource(allottedResource);
                serviceDecomp.addResource(configResource);
                
+               System.out.println(serviceDecomp.toJsonString());
+               
                assertThat(serviceDecomp.getServiceResource(vnfResource.getResourceId()), sameBeanAs(vnfResource));
                assertThat(serviceDecomp.getServiceResource(networkResource.getResourceId()), sameBeanAs(networkResource));
                assertThat(serviceDecomp.getServiceResource(allottedResource.getResourceId()), sameBeanAs(allottedResource));
index c424293..f094e99 100644 (file)
@@ -1,51 +1,59 @@
 {
-       "serviceResources" : {
-               "modelInfo" : {
-                       "modelName" : "modelName",
-                       "modelUuid" : "modelUuid",
-                       "modelInvariantUuid" : "modelInvariantUuid",
-                       "modelVersion" : "modelVersion",
-                       "modelCustomizationUuid" : "modelCustomizationUuid",
-                       "modelCustomizationName" : "modelCustomizationName",
-                       "modelInstanceName" : "modelInstanceName",
-                       "modelType" : "modelType"
-               },
-               "serviceType" : "serviceType",
-               "serviceRole" : "serviceRole",
-               "project" : {},
-               "owningEntity" : {},
-               "serviceInstance" : {
-                       "serviceInstanceId" : "serviceInstanceId"
-               },
-               "serviceVnfs" : [
-                       {
-                               "resourceId" : "vnfResourceId",
-                               "resourceType" : "VNF",
-                               "resourceInstance" : {},
-                               "homingSolution" : {
-                                       "license" : {},
-                                       "rehome" : false
-                               },
-                               "vfModules" : []
-                       }
-               ],
-               "networkResource" : [
-                       {
-                               "resourceId" : "networkResourceId",
-                               "resourceType" : "NETWORK"
-                       }
-               ],
-               "serviceAllottedResources" : [
-                       {
-                               "resourceId" : "allottedResourceId",
-                               "resourceType" : "ALLOTTED_RESOURCE"
-                       }
-               ],
-               "configResource" : [
-                       {
-                               "resourceId" : "configResourceId",
-                               "resourceType" : "CONFIGURATION"
-                       }
-               ]
-       }
-}
+  "serviceResources" : {
+    "serviceInstance" : {
+      "instanceId" : "serviceInstanceId",
+      "customer" : { }
+    },
+    "modelInfo" : {
+      "modelName" : "modelName",
+      "modelUuid" : "modelUuid",
+      "modelInvariantUuid" : "modelInvariantUuid",
+      "modelVersion" : "modelVersion",
+      "modelCustomizationUuid" : "modelCustomizationUuid",
+      "modelCustomizationName" : "modelCustomizationName",
+      "modelInstanceName" : "modelInstanceName",
+      "modelType" : "modelType"
+    },
+    "serviceType" : "serviceType",
+    "serviceRole" : "serviceRole",
+    "project" : { },
+    "owningEntity" : { },
+    "serviceVnfs" : [ {
+      "resourceId" : "vnfResourceId",
+      "resourceType" : "VNF",
+      "resourceInstance" : { },
+      "homingSolution" : {
+        "license" : { },
+        "rehome" : false
+      },
+      "vfModules" : [ ]
+    } ],
+    "serviceNetworks" : [ {
+      "resourceId" : "networkResourceId",
+      "resourceType" : "NETWORK",
+      "resourceInstance" : { },
+      "homingSolution" : {
+        "license" : { },
+        "rehome" : false
+      }
+    } ],
+    "serviceAllottedResources" : [ {
+      "resourceId" : "allottedResourceId",
+      "resourceType" : "ALLOTTED_RESOURCE",
+      "resourceInstance" : { },
+      "homingSolution" : {
+        "license" : { },
+        "rehome" : false
+      }
+    } ],
+    "configResource" : [ {
+      "resourceId" : "configResourceId",
+      "resourceType" : "CONFIGURATION",
+      "resourceInstance" : { },
+      "homingSolution" : {
+        "license" : { },
+        "rehome" : false
+      }
+    } ]
+  }
+}
\ No newline at end of file