2 * ============LICENSE_START=======================================================
\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
11 * http://www.apache.org/licenses/LICENSE-2.0
\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
21 package org.openecomp.mso.bpmn.infrastructure;
\r
23 import java.io.IOException;
\r
24 import java.util.HashMap;
\r
25 import java.util.Map;
\r
26 import java.util.UUID;
\r
28 import org.camunda.bpm.engine.test.Deployment;
\r
29 import org.junit.Assert;
\r
30 import org.junit.Ignore;
\r
31 import org.junit.Test;
\r
32 import org.openecomp.mso.bpmn.common.WorkflowTest;
\r
33 import org.openecomp.mso.bpmn.core.WorkflowException;
\r
34 import org.openecomp.mso.bpmn.mock.FileUtil;
\r
37 public class DoCreateVfModuleVolumeV2Test extends WorkflowTest {
\r
39 public static final String _prefix = "CVFMODVOL2_";
\r
41 private final CallbackSet callbacks = new CallbackSet();
\r
43 public DoCreateVfModuleVolumeV2Test() throws IOException {
\r
44 callbacks.put("volumeGroupCreate", FileUtil.readResourceFile(
\r
45 "__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeCallbackResponse.xml"));
\r
46 callbacks.put("volumeGroupRollback", FileUtil.readResourceFile(
\r
47 "__files/DoCreateVfModuleVolumeV1/RollbackVfModuleVolumeCallbackResponse.xml"));
\r
56 @Deployment(resources = {"subprocess/DoCreateVfModuleVolumeV2.bpmn",
\r
57 "subprocess/FalloutHandler.bpmn",
\r
58 "subprocess/CompleteMsoProcess.bpmn",
\r
59 "subprocess/vnfAdapterRestV1.bpmn",
\r
60 "subprocess/DoCreateVfModuleVolumeRollback.bpmn"})
\r
61 public void TestHappyPath() throws Exception {
\r
65 // DoCreateVfModuleVolume_Success();
\r
67 String businessKey = UUID.randomUUID().toString();
\r
68 String createVfModuleVolRequest = FileUtil.readResourceFile("__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeRequest.xml");
\r
70 Map<String, Object> testVariables = new HashMap<>();
\r
71 testVariables.put("volumeGroupId", "TEST-VOLUME-VOLUME-GROUP-ID-0123");
\r
72 testVariables.put("vnfId", "TEST-VNF-ID-0123");
\r
73 testVariables.put("lcpCloudRegionId", "AAIAIC25");
\r
74 testVariables.put("test-volume-group-name", "MSOTESTVOL101a-vSAMP12_base_vol_module-01");
\r
75 testVariables.put("test-volume-group-id", "TEST-VOLUME-GROUP-ID-0123");
\r
76 //testVariables.put("DoCreateVfModuleVolumeV1Request", createVfModuleVolRequest);
\r
77 TestAsyncResponse asyncResponse = invokeAsyncProcess("DoCreateVfModuleVolumeV2", "v1", businessKey, createVfModuleVolRequest, testVariables);
\r
79 injectVNFRestCallbacks(callbacks, "volumeGroupCreate");
\r
81 waitForProcessEnd(businessKey, 100000);
\r
82 checkVariable(businessKey, "DCVFMODVOLV2_SuccessIndicator", true);
\r
89 @Deployment(resources = {"subprocess/DoCreateVfModuleVolumeV2.bpmn",
\r
90 "subprocess/FalloutHandler.bpmn",
\r
91 "subprocess/CompleteMsoProcess.bpmn",
\r
92 "subprocess/vnfAdapterRestV1.bpmn",
\r
93 "subprocess/DoCreateVfModuleVolumeRollback.bpmn"})
\r
94 public void TestVolumeGroupExistError() throws Exception {
\r
98 // DoCreateVfModuleVolume_VolumeGroupExistsFail();
\r
100 String businessKey = UUID.randomUUID().toString();
\r
101 String createVfModuleVolRequest = FileUtil.readResourceFile("__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeRequest.xml");
\r
103 Map<String, Object> testVariables = new HashMap<>();
\r
104 testVariables.put("DCVFMODVOLV2_volumeGroupId", "TEST-VOLUME-VOLUME-GROUP-ID-0123");
\r
105 testVariables.put("vnf-id", "TEST-VNF-ID-0123");
\r
106 testVariables.put("volume-group-id", "TEST-VOLUME-GROUP-ID-0123");
\r
107 testVariables.put("test-volume-group-name", "TEST-MSOTESTVOL101a-vSAMP12_base_vol_module-0");
\r
108 testVariables.put("DoCreateVfModuleVolumeV1Request", createVfModuleVolRequest);
\r
109 TestAsyncResponse asyncResponse = invokeAsyncProcess("DoCreateVfModuleVolumeV2", "v1", businessKey, createVfModuleVolRequest, testVariables);
\r
111 //injectVNFRestCallbacks(callbacks, "volumeGroupCreate");
\r
113 waitForProcessEnd(businessKey, 100000);
\r
114 WorkflowException wfe = (WorkflowException) getVariableFromHistory(businessKey, "SavedWorkflowException1");
\r
115 Assert.assertTrue(wfe.getErrorCode() == 2500);
\r
116 Assert.assertTrue(wfe.getErrorMessage().startsWith("Generic vnf null was not found in AAI. Return code: 404."));
\r
117 checkVariable(businessKey, "DCVFMODVOLV2_SuccessIndicator", false);
\r
123 * Will trigger AAI create rollback
\r
124 * @throws Exception
\r
128 @Deployment(resources = {"subprocess/DoCreateVfModuleVolumeV2.bpmn",
\r
129 "subprocess/FalloutHandler.bpmn",
\r
130 "subprocess/CompleteMsoProcess.bpmn",
\r
131 "subprocess/vnfAdapterRestV1.bpmn",
\r
132 "subprocess/DoCreateVfModuleVolumeRollback.bpmn"})
\r
133 public void TestVnfVolumeGroupCreateError() throws Exception {
\r
137 // DoCreateVfModuleVolume_VnfCreateVolumeGroupFail();
\r
139 String businessKey = UUID.randomUUID().toString();
\r
140 String createVfModuleVolRequest = FileUtil.readResourceFile("__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeRequest.xml");
\r
142 Map<String, Object> testVariables = new HashMap<>();
\r
143 testVariables.put("DCVFMODVOLV2_volumeGroupId", "TEST-VOLUME-VOLUME-GROUP-ID-0123");
\r
144 testVariables.put("vnf-id", "TEST-VNF-ID-0123");
\r
145 testVariables.put("volume-group-id", "TEST-VOLUME-GROUP-ID-0123");
\r
146 testVariables.put("test-volume-group-name", "TEST-MSOTESTVOL101a-vSAMP12_base_vol_module-0");
\r
147 testVariables.put("test-volume-group-id", "TEST-VOLUME-GROUP-ID-0123");
\r
148 testVariables.put("DoCreateVfModuleVolumeV1Request", createVfModuleVolRequest);
\r
149 TestAsyncResponse asyncResponse = invokeAsyncProcess("DoCreateVfModuleVolumeV2", "v1", businessKey, createVfModuleVolRequest, testVariables);
\r
151 //injectVNFRestCallbacks(callbacks, "volumeGroupCreate");
\r
153 waitForProcessEnd(businessKey, 100000);
\r
154 checkVariable(businessKey, "DCVFMODVOLV2_SuccessIndicator", false);
\r
160 * Will trigger AAI create rollback
\r
161 * @throws Exception
\r
165 @Deployment(resources = {"subprocess/DoCreateVfModuleVolumeV2.bpmn",
\r
166 "subprocess/FalloutHandler.bpmn",
\r
167 "subprocess/CompleteMsoProcess.bpmn",
\r
168 "subprocess/vnfAdapterRestV1.bpmn",
\r
169 "subprocess/DoCreateVfModuleVolumeRollback.bpmn"})
\r
170 public void TestUpdateAaiVolumeGroupError() throws Exception {
\r
174 // DoCreateVfModuleVolume_AaiVolumeGroupUpdateFail();
\r
176 String businessKey = UUID.randomUUID().toString();
\r
177 String createVfModuleVolRequest = FileUtil.readResourceFile("__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeRequest.xml");
\r
179 Map<String, Object> testVariables = new HashMap<>();
\r
180 testVariables.put("DCVFMODVOLV2_volumeGroupId", "TEST-VOLUME-VOLUME-GROUP-ID-0123");
\r
181 testVariables.put("vnf-id", "TEST-VNF-ID-0123");
\r
182 testVariables.put("volume-group-id", "TEST-VOLUME-GROUP-ID-0123");
\r
183 testVariables.put("test-volume-group-name", "TEST-MSOTESTVOL101a-vSAMP12_base_vol_module-0");
\r
184 testVariables.put("test-volume-group-id", "TEST-VOLUME-GROUP-ID-0123");
\r
185 testVariables.put("DoCreateVfModuleVolumeV1Request", createVfModuleVolRequest);
\r
186 TestAsyncResponse asyncResponse = invokeAsyncProcess("DoCreateVfModuleVolumeV2", "v1", businessKey, createVfModuleVolRequest, testVariables);
\r
188 // VNF callback not needed fort this failure scenario
\r
189 // injectVNFRestCallbacks(callbacks, "volumeGroupCreate,volumeGroupRollback");
\r
191 waitForProcessEnd(businessKey, 100000);
\r
192 WorkflowException wfe = (WorkflowException) getVariableFromHistory(businessKey, "SavedWorkflowException1");
\r
193 Assert.assertTrue(wfe.getErrorCode() == 2500);
\r
194 Assert.assertTrue(wfe.getErrorMessage().startsWith("Generic vnf null was not found in AAI. Return code: 404."));
\r
195 checkVariable(businessKey, "DCVFMODVOLV2_SuccessIndicator", false);
\r
201 * Will trigger not trigger rollback
\r
202 * @throws Exception
\r
206 @Deployment(resources = {"subprocess/DoCreateVfModuleVolumeV2.bpmn",
\r
207 "subprocess/FalloutHandler.bpmn",
\r
208 "subprocess/CompleteMsoProcess.bpmn",
\r
209 "subprocess/vnfAdapterRestV1.bpmn",
\r
210 "subprocess/DoCreateVfModuleVolumeRollback.bpmn"})
\r
211 public void TestUpdateAaiVolumeGroupErrorNoRollback() throws Exception {
\r
215 // DoCreateVfModuleVolume_AaiVolumeGroupUpdateFail();
\r
217 String businessKey = UUID.randomUUID().toString();
\r
218 String createVfModuleVolRequest = FileUtil.readResourceFile("__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeNoRollbackRequest.xml");
\r
220 Map<String, Object> testVariables = new HashMap<>();
\r
221 testVariables.put("DCVFMODVOLV2_volumeGroupId", "TEST-VOLUME-VOLUME-GROUP-ID-0123");
\r
222 testVariables.put("vnf-id", "TEST-VNF-ID-0123");
\r
223 testVariables.put("volume-group-id", "TEST-VOLUME-GROUP-ID-0123");
\r
224 testVariables.put("test-volume-group-name", "TEST-MSOTESTVOL101a-vSAMP12_base_vol_module-0");
\r
225 testVariables.put("test-volume-group-id", "TEST-VOLUME-GROUP-ID-0123");
\r
226 testVariables.put("DoCreateVfModuleVolumeV1Request", createVfModuleVolRequest);
\r
227 TestAsyncResponse asyncResponse = invokeAsyncProcess("DoCreateVfModuleVolumeV2", "v1", businessKey, createVfModuleVolRequest, testVariables);
\r
229 // VNF callback not needed fort this failure scenario
\r
230 // injectVNFRestCallbacks(callbacks, "volumeGroupCreate");
\r
232 waitForProcessEnd(businessKey, 100000);
\r
233 WorkflowException wfe = (WorkflowException) getVariableFromHistory(businessKey, "SavedWorkflowException1");
\r
234 Assert.assertTrue(wfe.getErrorCode() == 2500);
\r
235 Assert.assertTrue(wfe.getErrorMessage().startsWith("Generic vnf null was not found in AAI. Return code: 404."));
\r
236 checkVariable(businessKey, "DCVFMODVOLV2_SuccessIndicator", false);
\r