return new ResponseEntity<>(HttpStatus.INTERNAL_SERVER_ERROR);
}
+ }
+ //Delete Macro
+
+ public ResponseEntity<CreateMacroServiceInstanceResponse> callMacroDeleteServiceInstance(MSOPayload msoPayload,
+ String serviceId) {
+
+ if (LOGGER.isDebugEnabled()) {
+ LOGGER.debug("Calling SO Macro DeleteServiceInstance with msoPayload : " + msoPayload.toString());
+ }
+
+ String url = deleteSoUrl + serviceId;
+
+ try {
+ ResponseEntity<CreateMacroServiceInstanceResponse> response = restTemplate.exchange(url, HttpMethod.DELETE,
+ new HttpEntity<>(msoPayload, buildRequestHeader()), CreateMacroServiceInstanceResponse.class);
+
+ logMacroResponsePost(url, response);
+ return response;
+
+ } catch (BackendFunctionalException e) {
+ LOGGER.error(ERROR_ON_CALLING + url + " ," + e);
+ return new ResponseEntity<>(e.getHttpStatus());
+ } catch (ResourceAccessException e) {
+ LOGGER.error(ERROR_ON_CALLING + url + " ," + e);
+ return new ResponseEntity<>(HttpStatus.INTERNAL_SERVER_ERROR);
+ }
+
}
public ResponseEntity<CreateE2EServiceInstanceResponse> callE2EDeleteServiceInstance(String globalSubscriberId,
response = soClient.callMacroCreateServiceInstance(msoMacroPayload);
break;
case DELETE:
- // response = soClient.callDeleteServiceInstance(msoPayload,
- // serviceOrderItem.getService().getId());
+ response = soClient.callMacroDeleteServiceInstance(msoMacroPayload,
+ serviceOrderItem.getService().getId());
break;
case MODIFY:
if (StateType.INPROGRESS_MODIFY_ITEM_TO_CREATE == serviceOrderItem.getState()) {
assertThat(executionTaskRepository.count()).isEqualTo(0);
}
-
+ //Test Macro Execution Delete
+ @Test
+ public void testMacroExecutionTaskDeleteSuccess() throws Exception {
+
+ ExecutionTask executionTaskA =ServiceOrderExecutionTaskAssertions.setUpBddForMacroExecutionTaskSucess(
+ serviceOrderRepository, executionTaskRepository, ActionType.DELETE);
+ ExecutionTask executionTaskB;
+
+ SoTaskProcessor.processOrderItem(executionTaskA);
+ ServiceOrder serviceOrderChecked = getServiceOrder("test");
+ assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.INPROGRESS);
+ for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
+ if (serviceOrderItem.getId().equals("A")) {
+ assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
+ } else {
+ assertThat(serviceOrderItem.getState()).isEqualTo(StateType.ACKNOWLEDGED);
+ }
+ }
+
+ executionTaskB = getExecutionTask("B");
+ assertThat(executionTaskB.getReliedTasks()).isNullOrEmpty();
+ executionTaskA = getExecutionTask("A");
+ assertThat(executionTaskA).isNull();
+
+ SoTaskProcessor.processOrderItem(executionTaskB);
+ serviceOrderChecked = getServiceOrder("test");
+ assertThat(serviceOrderChecked.getState()).isEqualTo(StateType.COMPLETED);
+ for (ServiceOrderItem serviceOrderItem : serviceOrderChecked.getOrderItem()) {
+ assertThat(serviceOrderItem.getState()).isEqualTo(StateType.COMPLETED);
+
+ }
+
+ assertThat(executionTaskRepository.count()).isEqualTo(0);
+
+ }
// Macro Flow Execution Task
@Test
public void testMacroExecutionTaskSuccess() throws Exception {
]
}
]
+ },
+ {
+ "state": "acknowledged",
+ "externalId": "LudONAP001",
+ "priority": "1",
+ "description": "Ludo first ONAP order",
+ "category": "Consumer",
+ "requestedStartDate": "2019-01-23T12:34:56.123456789Z",
+ "requestedCompletionDate": "2019-01-23T12:34:56.123456789Z",
+ "@baseType": "toto",
+ "completionDateTime": "2019-01-23T12:34:56.123456789Z",
+ "expectedCompletionDate": "2019-01-23T12:34:56.123456789Z",
+ "@schemaLocation": "/tutu",
+ "orderRelationship": [
+ {
+ "id": "test",
+ "href": "test",
+ "referredType": "test",
+ "type": "test"
+ }
+ ],
+ "relatedParty": [
+ {
+ "id": "6490",
+ "role": "ONAPcustomer",
+ "referredType": "individual",
+ "name": "Jean Pontus"
+ }
+ ],
+ "orderItem": [
+ {
+ "id": "A",
+ "action": "delete",
+ "state": "active",
+ "service": {
+ "id": "null",
+ "state": "active",
+ "serviceSpecification": {
+ "id": "82c9fbb4-656c-4973-8c7f-172b22b5fa8f"
+ }
+ }
+ },
+ {
+ "id": "B",
+ "action": "delete",
+ "state": "active",
+ "service": {
+ "id": "null",
+ "state": "active",
+ "serviceSpecification": {
+ "id": "82c9fbb4-656c-4973-8c7f-172b22b5fa8f"
+ }
+ },
+ "orderItemRelationship": [
+ {
+ "id": "A",
+ "type": "reliesOn"
+ }
+ ]
+ }
+ ]
}
]
+
When method delete
Then status 204
+Scenario: testCheckServiceOrderDeleteActionForMacro
+Given path 'serviceOrder'
+And request data[18]
+When method post
+Then status 201
+And def serviceOrderId = $.id
+Given path 'serviceOrder',serviceOrderId
+When method get
+Then status 200
+Given path 'serviceOrder',serviceOrderId
+When method delete
+Then status 204
+
Scenario: testCheckServiceOrderDeleteRejected
Given path 'serviceOrder'
And request data[10]
--- /dev/null
+{
+ "request": {
+ "method": "DELETE",
+ "url": "/onap/so/infra/serviceInstantiation/v7/serviceInstances/82c9fbb4-656c-4973-8c7f-172b22b5fa8f"
+ },
+ "response": {
+ "status": 202,
+ "headers": {
+ "Content-Type": "application/json"
+ },
+ "jsonBody": {
+ "requestReferences": {
+ "instanceId": "instanceId",
+ "requestId": "requestId"
+ }
+ }
+ }
+}
+