b5f7f645614d53d0062cf223b9bcc2dfbab00911
[so.git] / bpmn / MSOInfrastructureBPMN / src / test / java / org / openecomp / mso / bpmn / infrastructure / UpdateVfModuleInfraV2Test.java
1 /*- \r
2  * ============LICENSE_START======================================================= \r
3  * ONAP - SO \r
4  * ================================================================================ \r
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. \r
6  * ================================================================================ \r
7  * Licensed under the Apache License, Version 2.0 (the "License"); \r
8  * you may not use this file except in compliance with the License. \r
9  * You may obtain a copy of the License at \r
10  * \r
11  *      http://www.apache.org/licenses/LICENSE-2.0 \r
12  * \r
13  * Unless required by applicable law or agreed to in writing, software \r
14  * distributed under the License is distributed on an "AS IS" BASIS, \r
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. \r
16  * See the License for the specific language governing permissions and \r
17  * limitations under the License. \r
18  * ============LICENSE_END========================================================= \r
19  */\r
20 \r
21 package org.openecomp.mso.bpmn.infrastructure;\r
22 \r
23 import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetGenericVnfByIdWithDepth;\r
24 import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetGenericVnfByIdWithPriority;\r
25 import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockPutVfModuleIdNoResponse;\r
26 import static org.openecomp.mso.bpmn.mock.StubResponseDatabase.mockUpdateRequestDB;\r
27 import static org.openecomp.mso.bpmn.mock.StubResponseSDNCAdapter.mockSDNCAdapter;\r
28 import static org.openecomp.mso.bpmn.mock.StubResponseVNFAdapter.mockVNFPut;\r
29 \r
30 import java.io.IOException;\r
31 import java.util.HashMap;\r
32 import java.util.Map;\r
33 import java.util.UUID;\r
34 \r
35 import org.camunda.bpm.engine.test.Deployment;\r
36 import org.junit.Ignore;\r
37 import org.junit.Test;\r
38 import org.openecomp.mso.bpmn.common.WorkflowTest;\r
39 import org.openecomp.mso.bpmn.common.WorkflowTest.CallbackSet;\r
40 import org.openecomp.mso.bpmn.common.WorkflowTest.TestAsyncResponse;\r
41 import org.openecomp.mso.bpmn.common.workflow.service.WorkflowResponse;\r
42 import org.openecomp.mso.bpmn.mock.FileUtil;\r
43 \r
44 /**\r
45  * Unit test cases for UpdateVfModuleV2.bpmn\r
46  */\r
47 public class UpdateVfModuleInfraV2Test extends WorkflowTest {\r
48 \r
49     private final CallbackSet callbacks = new CallbackSet();\r
50 \r
51     public UpdateVfModuleInfraV2Test() throws IOException {\r
52         /*callbacks.put("changeassign", FileUtil.readResourceFile(\r
53                                 "__files/VfModularity/SDNCTopologyChangeAssignCallback.xml"));\r
54                 callbacks.put("query", FileUtil.readResourceFile(\r
55                                 "__files/VfModularity/SDNCTopologyQueryCallback.xml"));\r
56                 callbacks.put("activate", FileUtil.readResourceFile(\r
57                                 "__files/VfModularity/SDNCTopologyActivateCallback.xml"));\r
58                 callbacks.put("vnfUpdate", FileUtil.readResourceFile(\r
59                                 "__files/VfModularity/VNFAdapterRestUpdateCallback.xml"));*/\r
60     }\r
61 \r
62     @Test\r
63     @Ignore // IGNORED FOR 1710 MERGE TO ONAP\r
64     @Deployment(resources = {\r
65             "process/UpdateVfModuleInfraV2.bpmn",\r
66             "subprocess/DoUpdateVfModule.bpmn",\r
67             "subprocess/CompleteMsoProcess.bpmn",\r
68     })\r
69 \r
70     public void sunnyDay() throws Exception {\r
71         //logStart();\r
72 \r
73 \r
74         MockGetGenericVnfByIdWithDepth("skask", 1, "VfModularity/GenericVnf.xml");\r
75         MockPutVfModuleIdNoResponse("skask", "PCRF", "supercool");\r
76         MockGetGenericVnfByIdWithPriority("skask", "supercool", 200, "VfModularity/VfModule-supercool.xml", 1);\r
77         mockSDNCAdapter("/SDNCAdapter", "SvcInstanceId><", 200, "VfModularity/StandardSDNCSynchResponse.xml");\r
78         mockSDNCAdapter("/SDNCAdapter", "vnf-type>STMTN", 200, "VfModularity/StandardSDNCSynchResponse.xml");\r
79         mockSDNCAdapter("/SDNCAdapter", "SvcAction>query", 200, "VfModularity/StandardSDNCSynchResponse.xml");\r
80         mockVNFPut("skask", "/supercool", 202);\r
81         mockUpdateRequestDB(200, "Database/DBUpdateResponse.xml");\r
82 \r
83         String businessKey = UUID.randomUUID().toString();\r
84         Map<String, Object> variables = setupVariablesSunnyDayVID();\r
85 \r
86         String updateVfModuleRequest =\r
87                 FileUtil.readResourceFile("__files/InfrastructureFlows/UpdateVfModule_VID_request.json");\r
88         TestAsyncResponse asyncResponse = invokeAsyncProcess("UpdateVfModuleInfraV2",\r
89                 "v1", businessKey, updateVfModuleRequest, variables);\r
90 \r
91         WorkflowResponse response = receiveResponse(businessKey, asyncResponse, 10000);\r
92 \r
93         //String responseBody = response.getResponse();\r
94         //System.out.println("Workflow (Synch) Response:\n" + responseBody);\r
95 \r
96         //logEnd();\r
97     }\r
98 \r
99     // Active Scenario\r
100     private Map<String, Object> setupVariablesSunnyDayVID() {\r
101         Map<String, Object> variables = new HashMap<>();\r
102         variables.put("requestId", "testRequestId");\r
103         variables.put("isBaseVfModule", false);\r
104         variables.put("isDebugLogEnabled", "true");\r
105         variables.put("recipeTimeout", "0");\r
106         variables.put("requestAction", "UPDATE_VF_MODULE");\r
107         variables.put("serviceInstanceId", "f70e927b-6087-4974-9ef8-c5e4d5847ca4");\r
108         variables.put("vnfId", "skask");\r
109         variables.put("vnfType", "vSAMP12");\r
110         variables.put("vfModuleId", "supercool");\r
111         variables.put("volumeGroupId", "");\r
112         variables.put("serviceType", "MOG");\r
113         variables.put("vfModuleType", "");\r
114         variables.put("moduleUuid", "fe6985cd-ea33-3346-ac12-ab121484a3fe");\r
115         return variables;\r
116 \r
117     }\r
118 \r
119 }\r