Merge "Add execute resource recipe task script"
[so.git] / bpmn / MSOInfrastructureBPMN / src / test / groovy / org / openecomp / mso / bpmn / infrastructure / scripts / CreateGenericAlaCarteServiceInstanceTest.groovy
index 7c0d519..adab1bf 100644 (file)
@@ -4,7 +4,7 @@ import org.camunda.bpm.engine.ProcessEngineServices
 import org.camunda.bpm.engine.RepositoryService\r
 import org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity\r
 import org.camunda.bpm.engine.repository.ProcessDefinition\r
-import org.camunda.bpm.engine.runtime.Execution\r
+import org.camunda.bpm.engine.delegate.DelegateExecution\r
 import org.junit.Before\r
 import org.junit.Rule\r
 import org.junit.Test\r
@@ -24,7 +24,7 @@ class CreateGenericAlaCarteServiceInstanceTest  {
        @Rule\r
        public WireMockRule wireMockRule = new WireMockRule(8090);\r
        \r
-               String Prefix="CRENI_"\r
+               String Prefix="CRESI_"\r
                def utils = new MsoUtils()\r
                JsonUtils jsonUtil = new JsonUtils()\r
                VidUtils vidUtils = new VidUtils()\r
@@ -58,100 +58,50 @@ class CreateGenericAlaCarteServiceInstanceTest  {
                                                        <aetgt:ErrorCode>5300</aetgt:ErrorCode>\r
                                                </aetgt:WorkflowException>\r
                                        </aetgt:FalloutHandlerRequest>"""\r
+                                       \r
+               String completeMsoProcessRequest =\r
+                                          """<aetgt:MsoCompletionRequest xmlns:aetgt="http://org.openecomp/mso/workflow/schema/v1"\r
+                            xmlns:ns="http://org.openecomp/mso/request/types/v1"\r
+                            xmlns="http://org.openecomp/mso/infra/vnf-request/v1">\r
+   <request-info>\r
+      <request-id>88f65519-9a38-4c4b-8445-9eb4a5a5af56</request-id>\r
+      <action>CREATE</action>\r
+      <source>VID</source>\r
+   </request-info>\r
+   <aetgt:status-message>Network has been created successfully.</aetgt:status-message>\r
+   <aetgt:mso-bpel-name>BPMN Network action: CREATE</aetgt:mso-bpel-name>\r
+</aetgt:MsoCompletionRequest>"""\r
 \r
-String jsonIncomingRequest =\r
-"""{\r
-  "service": {\r
-    "name": "so_test4",\r
-    "description": "so_test2",\r
-    "serviceDefId": "60c3e96e-0970-4871-b6e0-3b6de7561519",\r
-    "templateId": "592f9437-a9c0-4303-b9f6-c445bb7e9814",\r
-    "parameters": {\r
-      "globalSubscriberId": "123457",\r
-      "subscriberName": "Customer1",\r
-      "serviceType": "voLTE",\r
-      "templateName": "voLTE Service:1.0",\r
-      "resources": [\r
-        {\r
-          "resourceName": "vIMS",\r
-          "resourceDefId": "60c3e96e-0970-4871-b6e0-3b6de7561516",\r
-          "resourceId": "60c3e96e-0970-4871-b6e0-3b6de7561512",\r
-          "nsParameters": {\r
-            "locationConstraints": [\r
-              {\r
-                "vnfProfileId": "zte-vBAS-1.0",\r
-                "locationConstraints": {\r
-                  "vimId": "4050083f-465f-4838-af1e-47a545222ad0"\r
-                }\r
-              },\r
-              {\r
-                "vnfProfileId": "zte-vMME-1.0",\r
-                "locationConstraints": {\r
-                  "vimId": "4050083f-465f-4838-af1e-47a545222ad0"\r
-                }\r
-              }\r
-            ],\r
-            "additionalParamForNs": {}\r
-          }\r
+               String jsonIncomingRequest =\r
+       """{\r
+        "requestDetails": {\r
+        "modelInfo": {\r
+        "modelType": "service",\r
+        "modelInvariantId": "1de901ed-17af-4b03-bc1f-41659cfa27cb",\r
+        "modelVersionId": "ace39141-09ec-4068-b06d-ac6b23bdc6e0",\r
+        "modelName": "demoVLB",\r
+        "modelVersion": "1.0"\r
         },\r
-        {\r
-          "resourceName": "vEPC",\r
-          "resourceDefId": "61c3e96e-0970-4871-b6e0-3b6de7561516",\r
-          "resourceId": "62c3e96e-0970-4871-b6e0-3b6de7561512",\r
-          "nsParameters": {\r
-            "locationConstraints": [\r
-              {\r
-                "vnfProfileId": "zte-CSCF-1.0",\r
-                "locationConstraints": {\r
-                  "vimId": "4050083f-465f-4838-af1e-47a545222ad1"\r
-                }\r
-              }\r
-            ],\r
-            "additionalParamForNs": {}\r
-          }\r
+        "cloudConfiguration" : {\r
+        "lcpCloudRegionId": "RegionOne",\r
+        "tenantId": "onap"\r
         },\r
-        {\r
-          "resourceName": "underlayvpn",\r
-          "resourceDefId": "60c3e96e-0970-4871-b6e0-3b6de7561513",\r
-          "resourceId": "60c3e96e-0970-4871-b6e0-3b6de7561514",\r
-          "nsParameters": {\r
-            "locationConstraints": [],\r
-            "additionalParamForNs": {\r
-              "externalDataNetworkName": "Flow_out_net",\r
-              "m6000_mng_ip": "181.18.20.2",\r
-              "externalCompanyFtpDataNetworkName": "Flow_out_net",\r
-              "externalPluginManageNetworkName": "plugin_net_2014",\r
-              "externalManageNetworkName": "mng_net_2017",\r
-              "sfc_data_network": "sfc_data_net_2016",\r
-              "NatIpRange": "210.1.1.10-210.1.1.20",\r
-              "location": "4050083f-465f-4838-af1e-47a545222ad0",\r
-              "sdncontroller": "9b9f02c0-298b-458a-bc9c-be3692e4f35e"\r
-            }\r
-          }\r
+        "subscriberInfo": {\r
+        "globalSubscriberId": "Demonstration",\r
+        "subscriberName": "Demonstration"\r
         },\r
-        {\r
-          "resourceName": "overlayvpn",\r
-          "resourceDefId": "60c3e96e-0970-4871-b6e0-3b6de7561517",\r
-          "resourceId": "60c3e96e-0970-4871-b6e0-3b6de7561518",\r
-          "nsParameters": {\r
-            "locationConstraints": [],\r
-            "additionalParamForNs": {\r
-              "externalDataNetworkName": "Flow_out_net",\r
-              "m6000_mng_ip": "181.18.20.2",\r
-              "externalCompanyFtpDataNetworkName": "Flow_out_net",\r
-              "externalPluginManageNetworkName": "plugin_net_2014",\r
-              "externalManageNetworkName": "mng_net_2017",\r
-              "sfc_data_network": "sfc_data_net_2016",\r
-              "NatIpRange": "210.1.1.10-210.1.1.20",\r
-              "location": "4050083f-465f-4838-af1e-47a545222ad0",\r
-              "sdncontroller": "9b9f02c0-298b-458a-bc9c-be3692e4f35e"\r
-            }\r
-          }\r
+        "requestInfo": {\r
+        "instanceName": "sample-instance-2",\r
+        "productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",\r
+        "source": "VID",\r
+        "requestorId":"1234",\r
+        "suppressRollback": "false"\r
+        },\r
+        "requestParameters": {\r
+        "subscriptionServiceType": "vLB"\r
+        }\r
         }\r
-      ]\r
-    }\r
-  }\r
-}"""\r
+        }"""\r
 \r
            @Before\r
                public void init()\r
@@ -160,13 +110,13 @@ String jsonIncomingRequest =
                        \r
                }\r
 \r
-               public void initializeVariables(Execution mockExecution) {\r
+               public void initializeVariables(DelegateExecution mockExecution) {\r
                        \r
-                       verify(mockExecution).setVariable(Prefix + "Success", false)\r
+                       //verify(mockExecution).setVariable(Prefix + "Success", false)\r
                        \r
-                       verify(mockExecution).setVariable(Prefix + "CompleteMsoProcessRequest", "")\r
-                       verify(mockExecution).setVariable(Prefix + "FalloutHandlerRequest", "")\r
-                       verify(mockExecution).setVariable(Prefix + "isSilentSuccess", false)\r
+                       //verify(mockExecution).setVariable(Prefix + "CompleteMsoProcessRequest", "")\r
+                       //verify(mockExecution).setVariable(Prefix + "FalloutHandlerRequest", "")\r
+                       //verify(mockExecution).setVariable(Prefix + "isSilentSuccess", false)\r
                                \r
                }\r
                                \r
@@ -181,12 +131,12 @@ String jsonIncomingRequest =
                        when(mockExecution.getVariable("bpmnRequest")).thenReturn(jsonIncomingRequest)\r
                        try{\r
                                                                        \r
-                               // preProcessRequest(Execution execution)                                               \r
+                               // preProcessRequest(DelegateExecution execution)                                               \r
                                CreateGenericALaCarteServiceInstance createGenericALaCarteServiceInstance = new CreateGenericALaCarteServiceInstance()\r
                                createGenericALaCarteServiceInstance.preProcessRequest(mockExecution)\r
 \r
-                               verify(mockExecution).getVariable("isDebugLogEnabled")\r
-                               verify(mockExecution).setVariable("prefix", Prefix)\r
+                               //verify(mockExecution).getVariable("isDebugLogEnabled")\r
+                               //verify(mockExecution).setVariable("prefix", Prefix)\r
                        \r
                                initializeVariables(mockExecution)\r
                                //verify(mockExecution).setVariable(Prefix + "Success", false)\r
@@ -194,4 +144,72 @@ String jsonIncomingRequest =
                                //ignore\r
                        }                       \r
                }\r
-               }
\ No newline at end of file
+               \r
+               @Test\r
+               //@Ignore\r
+               public void sendSyncResponse() {\r
+                       \r
+                       println "************ sendSyncResponse ************* "\r
+                       \r
+                       ExecutionEntity mockExecution = setupMock()\r
+                       when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
+                       when(mockExecution.getVariable("isAsyncProcess")).thenReturn(true)\r
+                       when(mockExecution.getVariable("mso-request-id")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
+                       when(mockExecution.getVariable("serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")\r
+                       try{\r
+                               // preProcessRequest(DelegateExecution execution)\r
+                               CreateGenericALaCarteServiceInstance createGenericALaCarteServiceInstance = new CreateGenericALaCarteServiceInstance()\r
+                               createGenericALaCarteServiceInstance.sendSyncResponse(mockExecution)\r
+\r
+                               //verify(mockExecution).setVariable("prefix", Prefix)\r
+                               //verify(mockExecution).setVariable("createServiceRestRequest", "202")\r
+                       }catch(Exception e){\r
+                               //ignore\r
+                       }\r
+               }\r
+               \r
+               @Test\r
+               //@Ignore\r
+               public void sendSyncError() {\r
+                       \r
+                       println "************ sendSyncError ************* "\r
+                       \r
+                       ExecutionEntity mockExecution = setupMock()\r
+                       when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")\r
+                       when(mockExecution.getVariable("isAsyncProcess")).thenReturn(true)\r
+                       when(mockExecution.getVariable("mso-request-id")).thenReturn("e8ebf6a0-f8ea-4dc0-8b99-fe98a87722d6")\r
+                       when(mockExecution.getVariable("serviceInstanceId")).thenReturn("f70e927b-6087-4974-9ef8-c5e4d5847ca4")\r
+                       try{\r
+                               CreateGenericALaCarteServiceInstance createGenericALaCarteServiceInstance = new CreateGenericALaCarteServiceInstance()\r
+                               createGenericALaCarteServiceInstance.sendSyncError(mockExecution)\r
+\r
+                               //verify(mockExecution).setVariable("prefix", Prefix)\r
+                               //verify(mockExecution).setVariable("createServiceRestRequest", "500")\r
+                       }catch(Exception e){\r
+                               //ignore\r
+                       }\r
+               }\r
+               \r
+               private ExecutionEntity setupMock() {\r
+                       \r
+                       ProcessDefinition mockProcessDefinition = mock(ProcessDefinition.class)\r
+                       when(mockProcessDefinition.getKey()).thenReturn("CreateGenericALaCarteSeviceInstance")\r
+                       RepositoryService mockRepositoryService = mock(RepositoryService.class)\r
+                       when(mockRepositoryService.getProcessDefinition()).thenReturn(mockProcessDefinition)\r
+                       when(mockRepositoryService.getProcessDefinition().getKey()).thenReturn("CreateGenericALaCarteSeviceInstance")\r
+                       when(mockRepositoryService.getProcessDefinition().getId()).thenReturn("100")\r
+                       ProcessEngineServices mockProcessEngineServices = mock(ProcessEngineServices.class)\r
+                       when(mockProcessEngineServices.getRepositoryService()).thenReturn(mockRepositoryService)\r
+                       \r
+                       ExecutionEntity mockExecution = mock(ExecutionEntity.class)\r
+                       // Initialize prerequisite variables\r
+                       \r
+                       when(mockExecution.getId()).thenReturn("100")\r
+                       when(mockExecution.getProcessDefinitionId()).thenReturn("CreateGenericALaCarteSeviceInstance")\r
+                       when(mockExecution.getProcessInstanceId()).thenReturn("CreateGenericALaCarteSeviceInstance")\r
+                       when(mockExecution.getProcessEngineServices()).thenReturn(mockProcessEngineServices)\r
+                       when(mockExecution.getProcessEngineServices().getRepositoryService().getProcessDefinition(mockExecution.getProcessDefinitionId())).thenReturn(mockProcessDefinition)\r
+                       \r
+                       return mockExecution\r
+               }\r
+}\r