package org.openecomp.mso.bpmn.infrastructure;
+import static com.github.tomakehurst.wiremock.client.WireMock.aResponse;
+import static com.github.tomakehurst.wiremock.client.WireMock.get;
+import static com.github.tomakehurst.wiremock.client.WireMock.stubFor;
+import static com.github.tomakehurst.wiremock.client.WireMock.urlMatching;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockDeleteVolumeGroupById;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetGenericVnfById;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetVolumeGroupByName;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockPutVolumeGroupById;
import static org.openecomp.mso.bpmn.mock.StubResponseDatabase.mockUpdateRequestDB;
import static org.openecomp.mso.bpmn.mock.StubResponseVNFAdapter.mockPostVNFVolumeGroup;
+import static org.openecomp.mso.bpmn.mock.StubResponseVNFAdapter.mockPutVNFVolumeGroupRollback;
import java.io.IOException;
import java.util.HashMap;
import java.util.UUID;
import org.camunda.bpm.engine.test.Deployment;
+import org.junit.Ignore;
import org.junit.Test;
import org.openecomp.mso.bpmn.common.WorkflowTest;
import org.openecomp.mso.bpmn.common.workflow.service.WorkflowResponse;
import org.openecomp.mso.bpmn.mock.FileUtil;
+import org.openecomp.mso.bpmn.mock.StubResponseAAI;
public class CreateVfModuleVolumeInfraV1Test extends WorkflowTest {
public CreateVfModuleVolumeInfraV1Test() throws IOException {
callbacks.put("volumeGroupCreate", FileUtil.readResourceFile(
"__files/CreateVfModuleVolumeInfraV1/CreateVfModuleVolumeCallbackResponse.xml"));
+ callbacks.put("volumeGroupDelete", FileUtil.readResourceFile(
+ "__files/DeleteVfModuleVolumeInfraV1/DeleteVfModuleVolumeCallbackResponse.xml"));
callbacks.put("volumeGroupException", FileUtil.readResourceFile(
"__files/CreateVfModuleVolumeInfraV1/CreateVfModuleCallbackException.xml"));
callbacks.put("volumeGroupRollback", FileUtil.readResourceFile(
* Happy path scenario for VID
*****************************/
@Test
+ //@Ignore
@Deployment(resources = {"process/CreateVfModuleVolumeInfraV1.bpmn",
"subprocess/GenericGetService.bpmn",
- "subprocess/DoCreateVfModuleVolumeV1.bpmn",
+ "subprocess/DoCreateVfModuleVolumeV2.bpmn",
"subprocess/FalloutHandler.bpmn",
"subprocess/CompleteMsoProcess.bpmn",
"subprocess/VnfAdapterRestV1.bpmn"})
logEnd();
}
+ /**
+ * Fail - trigger rollback
+ *****************************/
+ @Test
+ //@Ignore
+ @Deployment(resources = {"process/CreateVfModuleVolumeInfraV1.bpmn",
+ "subprocess/GenericGetService.bpmn",
+ "subprocess/DoCreateVfModuleVolumeV2.bpmn",
+ "subprocess/DoCreateVfModuleVolumeRollback.bpmn",
+ "subprocess/FalloutHandler.bpmn",
+ "subprocess/CompleteMsoProcess.bpmn",
+ "subprocess/VnfAdapterRestV1.bpmn"})
+ public void TestRollback() throws Exception {
+
+ logStart();
+
+ MockNodeQueryServiceInstanceById("test-service-instance-id", "CreateVfModuleVolumeInfraV1/getSIUrlById.xml");
+ MockGetGenericVnfById("/TEST-VNF-ID-0123", "CreateVfModuleVolumeInfraV1/GenericVnf.xml", 200);
+ MockPutVolumeGroupById("AAIAIC25", "TEST-VOLUME-GROUP-ID-0123", "CreateVfModuleVolumeInfraV1/createVfModuleVolume_createVolumeName_AAIResponse_Success.xml", 201);
+ mockPostVNFVolumeGroup(202);
+ mockPutVNFVolumeGroupRollback("TEST-VOLUME-GROUP-ID-0123", 202);
+ MockDeleteVolumeGroupById("AAIAIC25", "8424bb3c-c3e7-4553-9662-469649ed9379", "1460134360", 202);
+ StubResponseAAI.MockGetVolumeGroupByName_404("AAIAIC25", "TEST-MSOTESTVOL101a-vSAMP12_base_vol_module-0");
+ StubResponseAAI.MockGetVolumeGroupByName("AAIAIC25", "MSOTESTVOL101a-vSAMP12_base_vol_module-0", "CreateVfModuleVolumeInfraV1/createVfModuleVolume_queryVolumeName_AAIResponse_Success.xml", 200);
+ StubResponseAAI.MockDeleteVolumeGroup("AAIAIC25", "8424bb3c-c3e7-4553-9662-469649ed9379", "1460134360");
+
+ String businessKey = UUID.randomUUID().toString();
+ String createVfModuleVolRequest = FileUtil.readResourceFile("__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_VID_request.json");
+
+ Map<String, Object> testVariables = new HashMap<String, Object>();
+ testVariables.put("requestId", "TEST-REQUEST-ID-0123");
+ testVariables.put("serviceInstanceId", "test-service-instance-id");
+ testVariables.put("vnfId", "TEST-VNF-ID-0123");
+ testVariables.put("test-volume-group-name", "TEST-MSOTESTVOL101a-vSAMP12_base_vol_module-0");
+ testVariables.put("test-volume-group-id", "TEST-VOLUME-GROUP-ID-0123");
+
+ TestAsyncResponse asyncResponse = invokeAsyncProcess("CreateVfModuleVolumeInfraV1", "v1", businessKey, createVfModuleVolRequest, testVariables);
+ WorkflowResponse response = receiveResponse(businessKey, asyncResponse, 1000000);
+
+ String responseBody = response.getResponse();
+ System.out.println("Workflow (Synch) Response:\n" + responseBody);
+
+ injectVNFRestCallbacks(callbacks, "volumeGroupCreate");
+ injectVNFRestCallbacks(callbacks, "volumeGroupDelete");
+
+ waitForProcessEnd(businessKey, 100000);
+ checkVariable(businessKey, "CVMVINFRAV1_SuccessIndicator", false);
+
+ logEnd();
+ }
+
/**
* Happy path scenario for VID
*****************************/
@Test
+ @Ignore
@Deployment(resources = {"process/CreateVfModuleVolumeInfraV1.bpmn",
"subprocess/GenericGetService.bpmn",
"subprocess/DoCreateVfModuleVolumeV1.bpmn",
*Vnf Create fail
*****************************/
@Test
- //@Ignore
+ @Ignore
@Deployment(resources = {"process/CreateVfModuleVolumeInfraV1.bpmn",
"subprocess/GenericGetService.bpmn",
"subprocess/DoCreateVfModuleVolumeV1.bpmn",
* Error scenario - vnf not found
********************************/
@Test
- //@Ignore
+ @Ignore
@Deployment(resources = {"process/CreateVfModuleVolumeInfraV1.bpmn",
"subprocess/GenericGetService.bpmn",
"subprocess/DoCreateVfModuleVolumeV1.bpmn",
* Error scenario - error in validation
**************************************/
@Test
- //@Ignore
+ @Ignore
@Deployment(resources = {"process/CreateVfModuleVolumeInfraV1.bpmn",
"subprocess/GenericGetService.bpmn",
"subprocess/DoCreateVfModuleVolumeV1.bpmn",
* Error scenario - service instance not found
*********************************************/
@Test
- //@Ignore
+ @Ignore
@Deployment(resources = {"process/CreateVfModuleVolumeInfraV1.bpmn",
"subprocess/GenericGetService.bpmn",
"subprocess/DoCreateVfModuleVolumeV1.bpmn",