aboutsummaryrefslogtreecommitdiffstats
path: root/so-etsi-nfvo/so-etsi-nfvo-ns-lcm/so-etsi-nfvo-ns-lcm-service/src/test/java/org/onap/so/etsi/nfvo/ns/lcm/rest/NsLifecycleManagementControllerTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'so-etsi-nfvo/so-etsi-nfvo-ns-lcm/so-etsi-nfvo-ns-lcm-service/src/test/java/org/onap/so/etsi/nfvo/ns/lcm/rest/NsLifecycleManagementControllerTest.java')
-rw-r--r--so-etsi-nfvo/so-etsi-nfvo-ns-lcm/so-etsi-nfvo-ns-lcm-service/src/test/java/org/onap/so/etsi/nfvo/ns/lcm/rest/NsLifecycleManagementControllerTest.java288
1 files changed, 0 insertions, 288 deletions
diff --git a/so-etsi-nfvo/so-etsi-nfvo-ns-lcm/so-etsi-nfvo-ns-lcm-service/src/test/java/org/onap/so/etsi/nfvo/ns/lcm/rest/NsLifecycleManagementControllerTest.java b/so-etsi-nfvo/so-etsi-nfvo-ns-lcm/so-etsi-nfvo-ns-lcm-service/src/test/java/org/onap/so/etsi/nfvo/ns/lcm/rest/NsLifecycleManagementControllerTest.java
deleted file mode 100644
index 585b0e1811..0000000000
--- a/so-etsi-nfvo/so-etsi-nfvo-ns-lcm/so-etsi-nfvo-ns-lcm-service/src/test/java/org/onap/so/etsi/nfvo/ns/lcm/rest/NsLifecycleManagementControllerTest.java
+++ /dev/null
@@ -1,288 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.onap.so.etsi.nfvo.ns.lcm.rest;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.mockito.ArgumentMatchers.eq;
-import static org.mockito.Mockito.doNothing;
-import static org.mockito.Mockito.doThrow;
-import static org.mockito.Mockito.when;
-import java.net.URISyntaxException;
-import java.util.List;
-import java.util.UUID;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.so.etsi.nfvo.ns.lcm.Constants;
-import org.onap.so.etsi.nfvo.ns.lcm.TestApplication;
-import org.onap.so.etsi.nfvo.ns.lcm.bpmn.flows.GsonProvider;
-import org.onap.so.etsi.nfvo.ns.lcm.bpmn.flows.exceptions.NsRequestProcessingException;
-import org.onap.so.etsi.nfvo.ns.lcm.bpmn.flows.service.JobExecutorService;
-import org.onap.so.etsi.nfvo.ns.lcm.model.CreateNsRequest;
-import org.onap.so.etsi.nfvo.ns.lcm.model.InlineResponse400;
-import org.onap.so.etsi.nfvo.ns.lcm.model.InstantiateNsRequest;
-import org.onap.so.etsi.nfvo.ns.lcm.model.NsInstancesNsInstance;
-import org.onap.so.etsi.nfvo.ns.lcm.model.TerminateNsRequest;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.boot.test.mock.mockito.MockBean;
-import org.springframework.boot.test.web.client.TestRestTemplate;
-import org.springframework.boot.web.client.RestTemplateBuilder;
-import org.springframework.boot.web.server.LocalServerPort;
-import org.springframework.http.HttpEntity;
-import org.springframework.http.HttpHeaders;
-import org.springframework.http.HttpMethod;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.http.converter.json.GsonHttpMessageConverter;
-import org.springframework.test.context.ActiveProfiles;
-import org.springframework.test.context.junit4.SpringRunner;
-import com.google.gson.Gson;
-
-/**
- * @author Waqas Ikram (waqas.ikram@est.tech)
- *
- */
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = TestApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
-@ActiveProfiles("test")
-public class NsLifecycleManagementControllerTest {
- private static final String EXPECTED_BASE_URL =
- "http://so-etsi-nfvo-ns-lcm.onap:9095/so/so-etsi-nfvo-ns-lcm/v1/api/nslcm/v1";
- private static final String RANDOM_NS_LCM_OP_OCC_ID = UUID.randomUUID().toString();
- private static final String RANDOM_NS_INST_ID = UUID.randomUUID().toString();
- private static final String SERVICE_TYPE = "NetworkService";
- private static final String GLOBAL_CUSTOMER_ID = UUID.randomUUID().toString();
- private static final String EXPECTED_CREATE_REQ_LOCATION_URL =
- EXPECTED_BASE_URL + "/ns_instances/" + RANDOM_NS_INST_ID;
- private static final String EXPECTED_NS_LCM_OP_OCC_REQ_LOCATION_URL =
- EXPECTED_BASE_URL + "/ns_lcm_op_occs/" + RANDOM_NS_LCM_OP_OCC_ID;
-
- @LocalServerPort
- private int port;
-
- private TestRestTemplate testRestTemplate;
-
- @Autowired
- private GsonProvider gsonProvider;
-
- @MockBean
- private JobExecutorService mockedJobExecutorService;
-
- @Before
- public void setUp() {
- final Gson gson = gsonProvider.getGson();
- testRestTemplate = new TestRestTemplate(
- new RestTemplateBuilder().additionalMessageConverters(new GsonHttpMessageConverter(gson)));
- }
-
- @Test
- public void testCreateNs_ValidCreateNsRequest() throws URISyntaxException {
-
- final CreateNsRequest createNsRequest = getCreateNsRequest();
-
- when(mockedJobExecutorService.runCreateNsJob(eq(createNsRequest), eq(GLOBAL_CUSTOMER_ID), eq(SERVICE_TYPE)))
- .thenReturn(new NsInstancesNsInstance().id(RANDOM_NS_INST_ID));
-
- final String baseUrl = getNsLcmBaseUrl() + "/ns_instances";
- final HttpHeaders headers = new HttpHeaders();
- headers.add(Constants.HTTP_GLOBAL_CUSTOMER_ID_HTTP_HEADER_PARM_NAME, GLOBAL_CUSTOMER_ID);
- final HttpEntity<?> request = new HttpEntity<>(createNsRequest, headers);
- final ResponseEntity<NsInstancesNsInstance> responseEntity =
- testRestTemplate.exchange(baseUrl, HttpMethod.POST, request, NsInstancesNsInstance.class);
- assertEquals(HttpStatus.CREATED, responseEntity.getStatusCode());
- assertTrue(responseEntity.hasBody());
- assertNotNull(responseEntity.getBody());
-
- final HttpHeaders httpHeaders = responseEntity.getHeaders();
- assertTrue(httpHeaders.containsKey(HttpHeaders.LOCATION));
- final List<String> actual = httpHeaders.get(HttpHeaders.LOCATION);
- assertEquals(1, actual.size());
- assertEquals(EXPECTED_CREATE_REQ_LOCATION_URL, actual.get(0));
- }
-
- @Test
- public void testCreateNs_createNsRequest_nsRequestProcessingExceptionThrown_returnInlineResponse400()
- throws URISyntaxException {
-
- final CreateNsRequest createNsRequest = getCreateNsRequest();
-
- final String message = "Unable to process request";
- when(mockedJobExecutorService.runCreateNsJob(eq(createNsRequest), eq(GLOBAL_CUSTOMER_ID), eq(SERVICE_TYPE)))
- .thenThrow(new NsRequestProcessingException(message, new InlineResponse400().detail(message)));
-
- final String baseUrl = getNsLcmBaseUrl() + "/ns_instances";
- final HttpHeaders headers = new HttpHeaders();
- headers.add(Constants.HTTP_GLOBAL_CUSTOMER_ID_HTTP_HEADER_PARM_NAME, GLOBAL_CUSTOMER_ID);
- final HttpEntity<?> request = new HttpEntity<>(createNsRequest, headers);
- final ResponseEntity<InlineResponse400> responseEntity =
- testRestTemplate.exchange(baseUrl, HttpMethod.POST, request, InlineResponse400.class);
- assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, responseEntity.getStatusCode());
- assertTrue(responseEntity.hasBody());
- assertNotNull(responseEntity.getBody());
-
- final InlineResponse400 body = responseEntity.getBody();
- assertEquals(message, body.getDetail());
-
- }
-
- @Test
- public void testCreateNs_createNsRequest_exceptionThrown_returnInlineResponse400() throws URISyntaxException {
-
- final CreateNsRequest createNsRequest = getCreateNsRequest();
-
- final String message = "Unable to process request";
- when(mockedJobExecutorService.runCreateNsJob(eq(createNsRequest), eq(GLOBAL_CUSTOMER_ID), eq(SERVICE_TYPE)))
- .thenThrow(new RuntimeException(message));
-
- final String baseUrl = getNsLcmBaseUrl() + "/ns_instances";
- final HttpHeaders headers = new HttpHeaders();
- headers.add(Constants.HTTP_GLOBAL_CUSTOMER_ID_HTTP_HEADER_PARM_NAME, GLOBAL_CUSTOMER_ID);
- final HttpEntity<?> request = new HttpEntity<>(createNsRequest, headers);
- final ResponseEntity<InlineResponse400> responseEntity =
- testRestTemplate.exchange(baseUrl, HttpMethod.POST, request, InlineResponse400.class);
- assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, responseEntity.getStatusCode());
- assertTrue(responseEntity.hasBody());
- assertNotNull(responseEntity.getBody());
-
- final InlineResponse400 body = responseEntity.getBody();
- assertEquals(message, body.getDetail());
-
- }
-
- @Test
- public void testDeleteNs_SuccessfulCase() {
- final String nsInstId = UUID.randomUUID().toString();
- doNothing().when(mockedJobExecutorService).runDeleteNsJob(eq(nsInstId));
-
- final String baseUrl = getNsLcmBaseUrl() + "/ns_instances/" + nsInstId;
- final ResponseEntity<Void> responseEntity =
- testRestTemplate.exchange(baseUrl, HttpMethod.DELETE, null, Void.class);
- assertEquals(HttpStatus.NO_CONTENT, responseEntity.getStatusCode());
- }
-
- @Test
- public void testDeleteNs_nsRequestProcessingExceptionThrown_returnInlineResponse400() {
- final String nsInstId = UUID.randomUUID().toString();
- final String message = "Unable to process request";
- doThrow(new NsRequestProcessingException(message, new InlineResponse400().detail(message)))
- .when(mockedJobExecutorService).runDeleteNsJob(eq(nsInstId));
-
- final String baseUrl = getNsLcmBaseUrl() + "/ns_instances/" + nsInstId;
- final ResponseEntity<InlineResponse400> responseEntity =
- testRestTemplate.exchange(baseUrl, HttpMethod.DELETE, null, InlineResponse400.class);
-
- assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, responseEntity.getStatusCode());
- assertTrue(responseEntity.hasBody());
- assertNotNull(responseEntity.getBody());
- }
-
- @Test
- public void testInstantiateNs_ValidInstantiateNsRequest() {
-
- final InstantiateNsRequest instantiateNsRequest = getInstantiateNsRequest();
- when(mockedJobExecutorService.runInstantiateNsJob(eq(RANDOM_NS_INST_ID), eq(instantiateNsRequest)))
- .thenReturn(RANDOM_NS_LCM_OP_OCC_ID);
-
- final String baseUrl = getNsLcmBaseUrl() + "/ns_instances/" + RANDOM_NS_INST_ID + "/instantiate";
- final HttpEntity<?> request = new HttpEntity<>(instantiateNsRequest);
- final ResponseEntity<Void> responseEntity =
- testRestTemplate.exchange(baseUrl, HttpMethod.POST, request, Void.class);
- assertEquals(HttpStatus.ACCEPTED, responseEntity.getStatusCode());
-
- final HttpHeaders httpHeaders = responseEntity.getHeaders();
- assertTrue(httpHeaders.containsKey(HttpHeaders.LOCATION));
- final List<String> actual = httpHeaders.get(HttpHeaders.LOCATION);
- assertEquals(1, actual.size());
- assertEquals(EXPECTED_NS_LCM_OP_OCC_REQ_LOCATION_URL, actual.get(0));
- }
-
- @Test
- public void testInstantiateNs_instantiateNsRequest_nsRequestProcessingExceptionThrown_returnInlineResponse400() {
- final String message = "Unable to process request";
- final InstantiateNsRequest instantiateNsRequest = getInstantiateNsRequest();
- when(mockedJobExecutorService.runInstantiateNsJob(eq(RANDOM_NS_INST_ID), eq(instantiateNsRequest)))
- .thenThrow(new NsRequestProcessingException(message, new InlineResponse400().detail(message)));
-
- final String baseUrl = getNsLcmBaseUrl() + "/ns_instances/" + RANDOM_NS_INST_ID + "/instantiate";
- final HttpEntity<?> request = new HttpEntity<>(instantiateNsRequest);
- final ResponseEntity<InlineResponse400> responseEntity =
- testRestTemplate.exchange(baseUrl, HttpMethod.POST, request, InlineResponse400.class);
-
- assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, responseEntity.getStatusCode());
- assertTrue(responseEntity.hasBody());
- assertNotNull(responseEntity.getBody());
- }
-
- @Test
- public void testTerminateNs_ValidTerminateNsRequest_Success() {
- final TerminateNsRequest terminateNsRequest = getTerminateNsRequest();
- when(mockedJobExecutorService.runTerminateNsJob(eq(RANDOM_NS_INST_ID), eq(terminateNsRequest)))
- .thenReturn(RANDOM_NS_LCM_OP_OCC_ID);
-
- final String baseUrl = getNsLcmBaseUrl() + "/ns_instances/" + RANDOM_NS_INST_ID + "/terminate";
- final HttpEntity<?> request = new HttpEntity<>(terminateNsRequest);
- final ResponseEntity<Void> responseEntity =
- testRestTemplate.exchange(baseUrl, HttpMethod.POST, request, Void.class);
- assertEquals(HttpStatus.ACCEPTED, responseEntity.getStatusCode());
-
- final HttpHeaders httpHeaders = responseEntity.getHeaders();
- assertTrue(httpHeaders.containsKey(HttpHeaders.LOCATION));
- final List<String> actual = httpHeaders.get(HttpHeaders.LOCATION);
- assertEquals(1, actual.size());
- assertEquals(EXPECTED_NS_LCM_OP_OCC_REQ_LOCATION_URL, actual.get(0));
- }
-
- @Test
- public void testTerminateNs_ValidTerminateNsRequest_nsRequestProcessingExceptionThrown_returnInlineResponse400() {
- final String errorMessage = "ERROR MESSAGE";
- final TerminateNsRequest terminateNsRequest = getTerminateNsRequest();
- when(mockedJobExecutorService.runTerminateNsJob(eq(RANDOM_NS_INST_ID), eq(terminateNsRequest)))
- .thenThrow(new NsRequestProcessingException(errorMessage));
-
- final String baseUrl = getNsLcmBaseUrl() + "/ns_instances/" + RANDOM_NS_INST_ID + "/terminate";
- final HttpEntity<?> request = new HttpEntity<>(terminateNsRequest);
- final ResponseEntity<InlineResponse400> responseEntity =
- testRestTemplate.exchange(baseUrl, HttpMethod.POST, request, InlineResponse400.class);
- assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, responseEntity.getStatusCode());
- assertTrue(responseEntity.hasBody());
- assertNotNull(responseEntity.getBody());
- }
-
- private TerminateNsRequest getTerminateNsRequest() {
- // Only support for the immediate Terminate request; i.e., terminateTime field is empty (not set)
- return new TerminateNsRequest();
- }
-
- private InstantiateNsRequest getInstantiateNsRequest() {
- return new InstantiateNsRequest().nsFlavourId("FLAVOUR_ID");
- }
-
- private CreateNsRequest getCreateNsRequest() {
- return new CreateNsRequest().nsdId(RANDOM_NS_INST_ID);
- }
-
- private String getNsLcmBaseUrl() {
- return "http://localhost:" + port + Constants.NS_LIFE_CYCLE_MANAGEMENT_BASE_URL;
- }
-}
-