From 95668e34199497f67cc5c4e274768133ca747127 Mon Sep 17 00:00:00 2001 From: sekharhuawei Date: Wed, 16 Sep 2020 23:41:40 +0530 Subject: Sample Unit tests for cnf-adapter Issue-ID: SO-3244 Signed-off-by: sekharhuawei Change-Id: Ib632a6ab2cef542712e1b2137e92e069e730e443 --- .../so/adapters/cnf/rest/CnfAdapterRestTest.java | 161 +++++++++++++++++++++ .../cnf/service/CnfAdapterServiceTest.java | 139 ++++++++++++++++++ 2 files changed, 300 insertions(+) create mode 100644 adapters/mso-cnf-adapter/src/test/java/org/onap/so/adapters/cnf/rest/CnfAdapterRestTest.java create mode 100644 adapters/mso-cnf-adapter/src/test/java/org/onap/so/adapters/cnf/service/CnfAdapterServiceTest.java diff --git a/adapters/mso-cnf-adapter/src/test/java/org/onap/so/adapters/cnf/rest/CnfAdapterRestTest.java b/adapters/mso-cnf-adapter/src/test/java/org/onap/so/adapters/cnf/rest/CnfAdapterRestTest.java new file mode 100644 index 0000000000..df21a4212f --- /dev/null +++ b/adapters/mso-cnf-adapter/src/test/java/org/onap/so/adapters/cnf/rest/CnfAdapterRestTest.java @@ -0,0 +1,161 @@ + +/* + * ============LICENSE_START======================================================= ONAP - SO + * ================================================================================ Copyright (C) 2020 Huawei + * Technologies Co., Ltd. All rights reserved. + * ================================================================================ 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.so.adapters.cnf.rest; + + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.junit.Assert; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.onap.so.adapters.cnf.model.BpmnInstanceRequest; +import org.onap.so.adapters.cnf.model.InstanceMiniResponse; +import org.onap.so.adapters.cnf.model.InstanceMiniResponseList; +import org.onap.so.adapters.cnf.model.InstanceResponse; +import org.onap.so.adapters.cnf.model.InstanceStatusResponse; +import org.onap.so.adapters.cnf.model.MulticloudInstanceRequest; +import org.onap.so.adapters.cnf.model.Resource; +import org.onap.so.adapters.cnf.service.CnfAdapterService; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.test.context.junit4.SpringRunner; + + +@RunWith(SpringRunner.class) +public class CnfAdapterRestTest { + + @InjectMocks + CnfAdapterRest cnfAdapterRest; + + @Mock + CnfAdapterService cnfAdapterService; + + @Mock + ResponseEntity createInstanceResponse; + + @Mock + ResponseEntity instacneMiniResponseList; + + @Mock + ResponseEntity instanceStatusResponse; + + @Test + public void healthCheckTest() throws Exception { + + ResponseEntity response = new ResponseEntity(HttpStatus.OK); + CnfAdapterService cnfAdapterService = Mockito.mock(CnfAdapterService.class); + Mockito.when(cnfAdapterService.healthCheck()).thenReturn(response); + cnfAdapterRest.healthCheck(); + Assert.assertNotNull(response); + Assert.assertEquals(HttpStatus.OK, response.getStatusCode()); + } + + @Test + public void createInstanceTest() throws Exception { + + Map labels = new HashMap(); + labels.put("custom-label-1", "label1"); + Map overrideValues = new HashMap(); + labels.put("image.tag", "latest"); + labels.put("dcae_collector_ip", "1.2.3.4"); + BpmnInstanceRequest bpmnInstanceRequest = new BpmnInstanceRequest(); + bpmnInstanceRequest.setCloudRegionId("v1"); + bpmnInstanceRequest.setLabels(labels); + bpmnInstanceRequest.setModelInvariantId("krd"); + bpmnInstanceRequest.setModelVersionId("p1"); + bpmnInstanceRequest.setOverrideValues(overrideValues); + bpmnInstanceRequest.setVfModuleUUID("20200824"); + List resourceList = new ArrayList(); + InstanceResponse instanceResponse = new InstanceResponse(HttpStatus.CREATED.toString()); + instanceResponse.setId("123"); + instanceResponse.setNamespace("testNamespace"); + instanceResponse.setRequest(new MulticloudInstanceRequest()); + instanceResponse.setResources(resourceList); + createInstanceResponse = new ResponseEntity(instanceResponse, HttpStatus.CREATED); + CnfAdapterService cnfAdapterService = Mockito.mock(CnfAdapterService.class); + Mockito.when(cnfAdapterService.createInstance(bpmnInstanceRequest)).thenReturn(createInstanceResponse); + cnfAdapterRest.createInstance(bpmnInstanceRequest); + Assert.assertNotNull(createInstanceResponse); + Assert.assertEquals(HttpStatus.CREATED, createInstanceResponse.getStatusCode()); + } + + @Test + public void getInstanceByInstanceIdTest() throws Exception { + + String instanceId = "123"; + createInstanceResponse = new ResponseEntity(HttpStatus.OK); + CnfAdapterService cnfAdapterService = Mockito.mock(CnfAdapterService.class); + Mockito.when(cnfAdapterService.getInstanceByInstanceId(instanceId)).thenReturn(createInstanceResponse); + cnfAdapterRest.getInstanceByInstanceId(instanceId); + Assert.assertNotNull(createInstanceResponse); + Assert.assertEquals(HttpStatus.OK, createInstanceResponse.getStatusCode()); + } + + @Test + public void deleteInstanceByInstanceIdTest() throws Exception { + + String instanceId = "123"; + ResponseEntity response = new ResponseEntity(HttpStatus.OK); + CnfAdapterService cnfAdapterService = Mockito.mock(CnfAdapterService.class); + Mockito.when(cnfAdapterService.deleteInstanceByInstanceId(instanceId)).thenReturn(response); + cnfAdapterRest.deleteInstanceByInstanceId(instanceId); + Assert.assertNotNull(response); + Assert.assertEquals(HttpStatus.OK, response.getStatusCode()); + } + + @Test + public void getInstanceStatusByInstanceIdTest() throws Exception { + + String instanceId = "123"; + instanceStatusResponse = new ResponseEntity(HttpStatus.OK); + CnfAdapterService cnfAdapterService = Mockito.mock(CnfAdapterService.class); + Mockito.when(cnfAdapterService.getInstanceStatusByInstanceId(instanceId)).thenReturn(instanceStatusResponse); + cnfAdapterRest.getInstanceStatusByInstanceId(instanceId); + Assert.assertNotNull(instanceStatusResponse); + Assert.assertEquals(HttpStatus.OK, instanceStatusResponse.getStatusCode()); + } + + @Test + public void getInstanceByRBNameOrRBVersionOrProfileNameTest() throws Exception { + + String rbName = "xyz"; + String rbVersion = "v1"; + String profileName = "p1"; + InstanceMiniResponse instanceMiniResponse = new InstanceMiniResponse(HttpStatus.OK.toString()); + List instancList = new ArrayList(); + instancList.add(instanceMiniResponse); + InstanceMiniResponseList instanceMiniRespList = new InstanceMiniResponseList(HttpStatus.OK.toString()); + instanceMiniRespList.setInstancList(instancList); + instanceMiniRespList.setErrorMsg(HttpStatus.OK.toString()); + ResponseEntity respone = + new ResponseEntity(instanceMiniRespList, HttpStatus.OK); + CnfAdapterService cnfAdapterService = Mockito.mock(CnfAdapterService.class); + Mockito.when(cnfAdapterService.getInstanceByRBNameOrRBVersionOrProfileName(rbName, rbVersion, profileName)) + .thenReturn(instacneMiniResponseList); + cnfAdapterRest.getInstanceByRBNameOrRBVersionOrProfileName(rbName, rbVersion, profileName); + Assert.assertNotNull(instacneMiniResponseList); + Assert.assertEquals(HttpStatus.OK.toString(), instanceMiniRespList.getErrorMsg()); + } + +} + diff --git a/adapters/mso-cnf-adapter/src/test/java/org/onap/so/adapters/cnf/service/CnfAdapterServiceTest.java b/adapters/mso-cnf-adapter/src/test/java/org/onap/so/adapters/cnf/service/CnfAdapterServiceTest.java new file mode 100644 index 0000000000..0d3d8598bb --- /dev/null +++ b/adapters/mso-cnf-adapter/src/test/java/org/onap/so/adapters/cnf/service/CnfAdapterServiceTest.java @@ -0,0 +1,139 @@ +package org.onap.so.adapters.cnf.service; + +import javax.ws.rs.InternalServerErrorException; +import org.junit.Assert; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Matchers; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.onap.so.adapters.cnf.model.BpmnInstanceRequest; +import org.onap.so.adapters.cnf.model.InstanceMiniResponseList; +import org.onap.so.adapters.cnf.model.InstanceResponse; +import org.onap.so.adapters.cnf.model.InstanceStatusResponse; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpMethod; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.web.client.RestTemplate; + +@RunWith(SpringRunner.class) +public class CnfAdapterServiceTest { + + @InjectMocks + CnfAdapterService cnfAdapterService; + + @Mock + ResponseEntity createInstanceResponse; + + @Mock + ResponseEntity instacneMiniResponseList; + + @Mock + ResponseEntity instanceStatusResponse; + + @Mock + private RestTemplate restTemplate; + + @Test + public void healthCheckTest() throws Exception { + + ResponseEntity response = new ResponseEntity(HttpStatus.OK); + + Mockito.when(restTemplate.exchange(Matchers.anyString(), Matchers.any(HttpMethod.class), + Matchers.>any(), Matchers.>any())).thenReturn(response); + + ResponseEntity actualResponse = cnfAdapterService.healthCheck(); + Assert.assertNotNull(actualResponse); + Assert.assertEquals(HttpStatus.OK, actualResponse.getStatusCode()); + + } + + @Test + public void createInstanceTest() throws Exception { + + ResponseEntity response = new ResponseEntity(HttpStatus.OK); + BpmnInstanceRequest bpmnInstanceRequest = new BpmnInstanceRequest(); + bpmnInstanceRequest.setK8sRBProfileName("k8sRBProfileName"); + Mockito.when(restTemplate.exchange(Matchers.anyString(), Matchers.any(HttpMethod.class), + Matchers.>any(), Matchers.>any())).thenReturn(response); + + ResponseEntity actualResponse = cnfAdapterService.createInstance(bpmnInstanceRequest); + Assert.assertNotNull(response); + Assert.assertEquals(actualResponse.getStatusCode(), response.getStatusCode()); + + } + + @Test + public void createInstanceExceptionTest() throws Exception { + + BpmnInstanceRequest bpmnInstanceRequest = new BpmnInstanceRequest(); + ResponseEntity response = cnfAdapterService.createInstance(bpmnInstanceRequest); + Assert.assertNull(response); + + } + + @Test + public void getInstanceByInstanceIdTest() throws Exception { + + ResponseEntity response = new ResponseEntity(HttpStatus.OK); + String instanceId = "123"; + Mockito.when(restTemplate.exchange(Matchers.anyString(), Matchers.any(HttpMethod.class), + Matchers.>any(), Matchers.>any())).thenReturn(response); + + ResponseEntity actualResponse = cnfAdapterService.getInstanceByInstanceId(instanceId); + Assert.assertNotNull(actualResponse); + Assert.assertEquals(HttpStatus.OK, actualResponse.getStatusCode()); + + } + + @Test + public void getInstanceStatusByInstanceIdTest() throws Exception { + + ResponseEntity response = new ResponseEntity(HttpStatus.OK); + String instanceId = "123"; + Mockito.when(restTemplate.exchange(Matchers.anyString(), Matchers.any(HttpMethod.class), + Matchers.>any(), Matchers.>any())).thenReturn(response); + + ResponseEntity actualResponse = + cnfAdapterService.getInstanceStatusByInstanceId(instanceId); + Assert.assertNotNull(actualResponse); + Assert.assertEquals(HttpStatus.OK, response.getStatusCode()); + + } + + @Test + public void getInstanceByRBNameOrRBVersionOrProfileNameTest() throws Exception { + + ResponseEntity response = new ResponseEntity(HttpStatus.OK); + String rbName = "xyz"; + String rbVersion = "v1"; + String profileName = "p1"; + + Mockito.when(restTemplate.exchange(Matchers.anyString(), Matchers.any(HttpMethod.class), + Matchers.>any(), Matchers.>any())).thenReturn(response); + + ResponseEntity actualResponse = + cnfAdapterService.getInstanceByRBNameOrRBVersionOrProfileName(rbName, rbVersion, profileName); + Assert.assertNotNull(actualResponse); + Assert.assertEquals(HttpStatus.OK, actualResponse.getStatusCode()); + + } + + @Test + public void deleteInstanceByInstanceIdTest() throws Exception { + + ResponseEntity response = new ResponseEntity(HttpStatus.OK); + String instanceId = "123"; + Mockito.when(restTemplate.exchange(Matchers.anyString(), Matchers.any(HttpMethod.class), + Matchers.>any(), Matchers.>any())).thenReturn(response); + + ResponseEntity actualResponse = cnfAdapterService.deleteInstanceByInstanceId(instanceId); + Assert.assertNotNull(response); + Assert.assertEquals(HttpStatus.OK, response.getStatusCode()); + + } + +} -- cgit 1.2.3-korg