import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
+import static org.onap.sdnc.northbound.client.model.GenericResourceApiRpcActionEnumeration.ASSIGN;
+import static org.onap.sdnc.northbound.client.model.GenericResourceApiRpcActionEnumeration.DEACTIVATE;
import static org.onap.so.sdncsimulator.controller.TestUtils.getInvalidRequestInput;
import static org.onap.so.sdncsimulator.controller.TestUtils.getRequestInput;
+import static org.onap.so.sdncsimulator.controller.TestUtils.getServiceRequestWithRequestActionDeleteServiceAndSvcActionDeactivateInput;
import static org.onap.so.sdncsimulator.controller.TestUtils.getServiceRequestWithRequestActionDeleteServiceInput;
import static org.onap.so.sdncsimulator.controller.TestUtils.getVnfRequestInput;
import static org.onap.so.sdncsimulator.controller.TestUtils.getVnfRequestWithRequestActionDeleteVnfInput;
@Configuration
public class OperationsControllerTest {
+ private static final String HTTP_STATUS_BAD_REQUEST = Integer.toString(HttpStatus.BAD_REQUEST.value());
+ private static final String HTTP_STATUS_OK = Integer.toString(HttpStatus.OK.value());
+
private static final String SVC_REQUEST_ID = "04fc9f50-87b8-430d-a232-ef24bd6c4150";
private static final String VNF_SVC_REQUEST_ID = "8fd2622b-01fc-424d-bfc8-f48bcd64e546";
final Output actualObject = actualOutputRequest.getOutput();
assertNotNull(actualObject);
- assertEquals(HttpStatus.OK.toString(), actualObject.getResponseCode());
+ assertEquals(HTTP_STATUS_OK, actualObject.getResponseCode());
assertEquals(Constants.YES, actualObject.getAckFinalIndicator());
assertEquals(SVC_REQUEST_ID, actualObject.getSvcRequestId());
assertNotNull(actualObject.getServiceResponseInformation());
final Output actualObject = actualOutputRequest.getOutput();
assertNotNull(actualObject);
- assertEquals(HttpStatus.BAD_REQUEST.toString(), actualObject.getResponseCode());
+ assertEquals(HTTP_STATUS_BAD_REQUEST, actualObject.getResponseCode());
assertEquals(SVC_REQUEST_ID, actualObject.getSvcRequestId());
assertEquals(Constants.YES, actualObject.getAckFinalIndicator());
final Output actualObject = actualOutputRequest.getOutput();
- assertEquals(HttpStatus.OK.toString(), actualObject.getResponseCode());
+ assertEquals(HTTP_STATUS_OK, actualObject.getResponseCode());
assertEquals(Constants.YES, actualObject.getAckFinalIndicator());
assertEquals(VNF_SVC_REQUEST_ID, actualObject.getSvcRequestId());
assertNotNull(actualObject.getServiceResponseInformation());
final Output actualObject = badOutputRequest.getOutput();
assertNotNull(actualObject);
- assertEquals(HttpStatus.BAD_REQUEST.toString(), actualObject.getResponseCode());
+ assertEquals(HTTP_STATUS_BAD_REQUEST, actualObject.getResponseCode());
assertEquals(VNF_SVC_REQUEST_ID, actualObject.getSvcRequestId());
assertEquals(Constants.YES, actualObject.getAckFinalIndicator());
final Output actualObject = actualOutputRequest.getOutput();
- assertEquals(HttpStatus.OK.toString(), actualObject.getResponseCode());
+ assertEquals(HTTP_STATUS_OK, actualObject.getResponseCode());
assertEquals(Constants.YES, actualObject.getAckFinalIndicator());
assertEquals(VNF_SVC_REQUEST_ID, actualObject.getSvcRequestId());
assertNotNull(actualObject.getServiceResponseInformation());
final Output actualObject = actualOutputRequest.getOutput();
- assertEquals(HttpStatus.OK.toString(), actualObject.getResponseCode());
+ assertEquals(HTTP_STATUS_OK, actualObject.getResponseCode());
assertEquals(Constants.YES, actualObject.getAckFinalIndicator());
assertEquals(VNF_SVC_REQUEST_ID, actualObject.getSvcRequestId());
final Output actualObject = actualOutputRequest.getOutput();
- assertEquals(HttpStatus.OK.toString(), actualObject.getResponseCode());
+ assertEquals(HTTP_STATUS_OK, actualObject.getResponseCode());
assertEquals(Constants.YES, actualObject.getAckFinalIndicator());
assertEquals(SVC_REQUEST_ID, actualObject.getSvcRequestId());
}
+ @Test
+ public void test_postServiceOperationInformation_withActionDeleteServiceInstanceAndSvcActionDeactivate_successfullyUpdateExistingServiceInCache()
+ throws Exception {
+
+ final HttpEntity<?> httpEntity = new HttpEntity<>(getRequestInput(), getHttpHeaders());
+ final ResponseEntity<OutputRequest> responseEntity =
+ restTemplate.exchange(getUrl(), HttpMethod.POST, httpEntity, OutputRequest.class);
+
+ assertEquals(HttpStatus.OK, responseEntity.getStatusCode());
+ Optional<GenericResourceApiServicemodelinfrastructureService> serviceOptional =
+ cacheServiceProvider.getGenericResourceApiServicemodelinfrastructureService(SERVICE_INSTANCE_ID);
+ assertTrue(serviceOptional.isPresent());
+
+ GenericResourceApiServicemodelinfrastructureService service = serviceOptional.get();
+ assertNotNull(service.getServiceInstanceId());
+ assertNotNull(service.getServiceStatus());
+ assertEquals(ASSIGN, service.getServiceStatus().getRpcAction());
+
+ final HttpEntity<?> entity = new HttpEntity<>(
+ getServiceRequestWithRequestActionDeleteServiceAndSvcActionDeactivateInput(), getHttpHeaders());
+ final ResponseEntity<OutputRequest> deactivateResponseEntity =
+ restTemplate.exchange(getUrl(), HttpMethod.POST, entity, OutputRequest.class);
+ assertEquals(HttpStatus.OK, deactivateResponseEntity.getStatusCode());
+
+ final OutputRequest actualOutputRequest = deactivateResponseEntity.getBody();
+ assertNotNull(actualOutputRequest);
+ assertNotNull(actualOutputRequest.getOutput());
+
+ final Output actualObject = actualOutputRequest.getOutput();
+
+ assertEquals(HTTP_STATUS_OK, actualObject.getResponseCode());
+ assertEquals(Constants.YES, actualObject.getAckFinalIndicator());
+ assertEquals(SVC_REQUEST_ID, actualObject.getSvcRequestId());
+
+ serviceOptional =
+ cacheServiceProvider.getGenericResourceApiServicemodelinfrastructureService(SERVICE_INSTANCE_ID);
+ assertTrue(serviceOptional.isPresent());
+ service = serviceOptional.get();
+ assertNotNull(service.getServiceStatus());
+ assertEquals(DEACTIVATE, service.getServiceStatus().getRpcAction());
+
+ }
+
private HttpHeaders getHttpHeaders() {
return TestUtils.getHttpHeaders(userCredentials.getUsers().iterator().next().getUsername());
}