From 766e23f1dd95700ff1a1d9e89d8a3cf8d147036c Mon Sep 17 00:00:00 2001 From: Niranjana Date: Mon, 22 Feb 2021 12:55:18 +0000 Subject: Add AAI updates Issue-ID: DCAEGEN2-2623 Signed-off-by: Niranjana Change-Id: I0f724981c5b19d033ec1cb79c9d4d2b5120125b7 --- .../ms/configdb/AaiInterfaceServiceTest.java | 114 +++++++++++++++++++++ .../ms/configdb/ConfigDbInterfaceServiceTest.java | 6 +- .../analysis/ms/restclients/RestClientTest.java | 85 ++++++++------- .../ms/service/MLMessageProcessorTest.java | 10 +- 4 files changed, 169 insertions(+), 46 deletions(-) create mode 100644 components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/configdb/AaiInterfaceServiceTest.java (limited to 'components/slice-analysis-ms/src/test/java/org/onap') diff --git a/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/configdb/AaiInterfaceServiceTest.java b/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/configdb/AaiInterfaceServiceTest.java new file mode 100644 index 00000000..78607788 --- /dev/null +++ b/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/configdb/AaiInterfaceServiceTest.java @@ -0,0 +1,114 @@ +/******************************************************************************* + * ============LICENSE_START======================================================= + * slice-analysis-ms + * ================================================================================ + * Copyright (C) 2021 Wipro Limited. + * ============================================================================== + * 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.slice.analysis.ms.configdb; + +import static org.junit.Assert.assertEquals; + +import java.nio.file.Files; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.powermock.api.mockito.PowerMockito; +import org.powermock.core.classloader.annotations.PowerMockIgnore; +import org.powermock.core.classloader.annotations.PrepareForTest; +import org.powermock.modules.junit4.PowerMockRunner; +import org.powermock.modules.junit4.PowerMockRunnerDelegate; +import org.onap.slice.analysis.ms.models.Configuration; +import org.onap.slice.analysis.ms.models.configdb.CellsModel; +import org.onap.slice.analysis.ms.models.configdb.NetworkFunctionModel; +import org.onap.slice.analysis.ms.restclients.AaiRestClient; +import org.onap.slice.analysis.ms.restclients.ConfigDbRestClient; +import org.onap.slice.analysis.ms.utils.BeanUtil; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(PowerMockRunner.class) +@PowerMockRunnerDelegate(SpringRunner.class) +@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*"}) +@PrepareForTest({ AaiService.class,Configuration.class }) +@SpringBootTest(classes = AaiInterfaceServiceTest.class) +public class AaiInterfaceServiceTest { + + Configuration configuration = Configuration.getInstance(); + + @InjectMocks + AaiService aaiService; + + @Mock + AaiRestClient restClient; + + @Test + public void fetchCurrentConfigurationOfSlice() { + configuration.setAaiUrl("http://aai:30233/aai/v21/business/customers/customer/"); + PowerMockito.mockStatic(AaiService.class); + PowerMockito.mockStatic(Configuration.class); + PowerMockito.when(Configuration.getInstance()).thenReturn(configuration); + Map responsemap = new HashMap<>(); + responsemap.put("dLThptPerSlice", 60); + responsemap.put("uLThptPerSlice", 54); + try { + String serviceInstance = new String( + Files.readAllBytes(Paths.get("src/test/resources/aaiDetailsList.json"))); + Mockito.when(restClient.sendGetRequest(Mockito.anyString(), Mockito.any())) + .thenReturn(new ResponseEntity(serviceInstance, HttpStatus.OK)); + + + } catch (Exception e) { + e.printStackTrace(); + + } + assertEquals(responsemap, aaiService.fetchCurrentConfigurationOfSlice("001-010000")); + } + + @Test + public void fetchServiceProfile() { + Map responseMap = new HashMap(); + responseMap.put("sNSSAI", "001-00110"); + responseMap.put("ranNFNSSIId", "4b889f2b-8ee4-4ec7-881f-5b1af8a74039"); + responseMap.put("sliceProfileId", "ab9af40f13f7219099333"); + responseMap.put("globalSubscriberId", "5GCustomer"); + responseMap.put("subscriptionServiceType", "5G"); + + try { + String serviceInstance = new String( + Files.readAllBytes(Paths.get("src/test/resources/aaiDetailsList.json"))); + Mockito.when(restClient.sendGetRequest(Mockito.anyString(), Mockito.any())) + .thenReturn(new ResponseEntity(serviceInstance, HttpStatus.OK)); + + } catch (Exception e) { + e.printStackTrace(); + + } + + assertEquals(responseMap, aaiService.fetchServiceDetails("001-00110")); + } +} + diff --git a/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/configdb/ConfigDbInterfaceServiceTest.java b/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/configdb/ConfigDbInterfaceServiceTest.java index 481fee6f..3cb0a3b7 100644 --- a/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/configdb/ConfigDbInterfaceServiceTest.java +++ b/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/configdb/ConfigDbInterfaceServiceTest.java @@ -2,7 +2,7 @@ * ============LICENSE_START======================================================= * slice-analysis-ms * ================================================================================ - * Copyright (C) 2020 Wipro Limited. + * Copyright (C) 2020-2021 Wipro Limited. * ============================================================================== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -64,8 +64,9 @@ public class ConfigDbInterfaceServiceTest { map.put("dLThptPerSlice", 45); map.put("uLThptPerSlice", 50); responsemap.put("1", map); + Mockito.when(restclient.sendGetRequest(Mockito.anyString(), Mockito.any())).thenReturn(new ResponseEntity(responsemap, HttpStatus.OK)); - assertEquals(responsemap, configdbservice.fetchCurrentConfigurationOfSlice("snssai")); + assertEquals(responsemap, configdbservice.fetchCurrentConfigurationOfRIC("snssai")); } @Test @@ -125,3 +126,4 @@ public class ConfigDbInterfaceServiceTest { assertEquals(responseMap, configdbservice.fetchServiceDetails("snssai")); } } + diff --git a/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/restclients/RestClientTest.java b/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/restclients/RestClientTest.java index 95da3667..fe7407f8 100644 --- a/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/restclients/RestClientTest.java +++ b/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/restclients/RestClientTest.java @@ -2,7 +2,7 @@ * ============LICENSE_START======================================================= * slice-analysis-ms * ================================================================================ - * Copyright (C) 2020 Wipro Limited. + * Copyright (C) 2020-2021 Wipro Limited. * ============================================================================== * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,7 +20,6 @@ *******************************************************************************/ package org.onap.slice.analysis.ms.restclients; - import static org.junit.Assert.assertEquals; import static org.mockito.Mockito.when; @@ -32,6 +31,7 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.InjectMocks; import org.mockito.Mock; +import org.mockito.Mockito; import org.onap.slice.analysis.ms.service.SnssaiSamplesProcessorTest; import org.onap.slice.analysis.ms.utils.BeanUtil; import org.powermock.core.classloader.annotations.PowerMockIgnore; @@ -49,61 +49,60 @@ import org.springframework.http.ResponseEntity; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.web.client.RestTemplate; - - @RunWith(SpringRunner.class) @SpringBootTest(classes = RestClientTest.class) public class RestClientTest { - + @Mock RestTemplate restTemplate; @InjectMocks RestClient restclient; - - @SuppressWarnings({ "static-access"}) + + @SuppressWarnings({ "static-access" }) @Test public void sendGetRequestTest() { - ParameterizedTypeReference> responseType = null; - HttpHeaders headers = new HttpHeaders(); - headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON)); - headers.setContentType(MediaType.APPLICATION_JSON); + String requestUrl = ""; + ParameterizedTypeReference responseType = null; + HttpHeaders headers = new HttpHeaders(); + headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON)); + headers.setContentType(MediaType.APPLICATION_JSON); HttpEntity requestEntity = new HttpEntity<>( headers); - Map responsemap=new HashMap<>(); - responsemap.put("dLThptPerSlice", 1); - responsemap.put("uLThptPerSlice", 2); - String requestUrl=""; - when(restTemplate.exchange(requestUrl, HttpMethod.GET,requestEntity,responseType)).thenReturn(ResponseEntity.ok(responsemap)); - ResponseEntity> resp = restclient.sendGetRequest(headers, requestUrl, responseType); - assertEquals(resp.getBody(),responsemap); + when(restTemplate.exchange(requestUrl, HttpMethod.GET, requestEntity, responseType)) + .thenReturn(new ResponseEntity(HttpStatus.NOT_FOUND)); + assertEquals(restclient.sendGetRequest(headers, requestUrl, responseType).getStatusCode(), HttpStatus.NOT_FOUND); } - + @SuppressWarnings({ "static-access", "unchecked", "rawtypes" }) @Test - public void sendPostRequestTest() { - ParameterizedTypeReference responseType = null; - HttpHeaders headers = new HttpHeaders(); - headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON)); - headers.setContentType(MediaType.APPLICATION_JSON); - String requestUrl = "Url"; String requestBody = null; - HttpEntity requestEntity = new HttpEntity<>(requestBody, headers); - when(restTemplate.exchange(requestUrl, HttpMethod.POST,requestEntity,responseType)).thenReturn(new ResponseEntity(HttpStatus.OK)); - ResponseEntity resp = restclient.sendPostRequest(headers, requestUrl, requestBody,responseType); - assertEquals(resp.getStatusCode(), HttpStatus.OK); + public void sendPostRequestTest() { + ParameterizedTypeReference responseType = null; + HttpHeaders headers = new HttpHeaders(); + headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON)); + headers.setContentType(MediaType.APPLICATION_JSON); + String requestUrl = "Url"; + String requestBody = null; + HttpEntity requestEntity = new HttpEntity<>(requestBody, headers); + when(restTemplate.exchange(requestUrl, HttpMethod.POST, requestEntity, responseType)) + .thenReturn(new ResponseEntity(HttpStatus.OK)); + ResponseEntity resp = restclient.sendPostRequest(headers, requestUrl, requestBody, responseType); + assertEquals(resp.getStatusCode(), HttpStatus.OK); } - + @Test - public void sendPostRequestTest2() { - ParameterizedTypeReference responseType = null; - HttpHeaders headers = new HttpHeaders(); - headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON)); - headers.setContentType(MediaType.APPLICATION_JSON); - String requestUrl = "Url"; String requestBody = null; - HttpEntity requestEntity = new HttpEntity<>(requestBody, headers); - when(restTemplate.exchange(requestUrl, HttpMethod.POST,requestEntity,responseType)).thenReturn(new ResponseEntity(HttpStatus.NOT_FOUND)); - ResponseEntity resp = restclient.sendPostRequest(headers, requestUrl, requestBody,responseType); - assertEquals(resp.getStatusCode(), HttpStatus.NOT_FOUND); - } - - + public void sendPostRequestTest2() { + ParameterizedTypeReference responseType = null; + HttpHeaders headers = new HttpHeaders(); + headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON)); + headers.setContentType(MediaType.APPLICATION_JSON); + String requestUrl = "Url"; + String requestBody = null; + HttpEntity requestEntity = new HttpEntity<>(requestBody, headers); + when(restTemplate.exchange(requestUrl, HttpMethod.POST, requestEntity, responseType)) + .thenReturn(new ResponseEntity(HttpStatus.NOT_FOUND)); + ResponseEntity resp = restclient.sendPostRequest(headers, requestUrl, requestBody, responseType); + assertEquals(resp.getStatusCode(), HttpStatus.NOT_FOUND); + } + } + diff --git a/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/service/MLMessageProcessorTest.java b/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/service/MLMessageProcessorTest.java index d80160c9..6e0d1243 100644 --- a/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/service/MLMessageProcessorTest.java +++ b/components/slice-analysis-ms/src/test/java/org/onap/slice/analysis/ms/service/MLMessageProcessorTest.java @@ -37,6 +37,8 @@ import org.junit.runner.RunWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.onap.slice.analysis.ms.configdb.IConfigDbService; +import org.onap.slice.analysis.ms.configdb.AaiService; +import org.onap.slice.analysis.ms.configdb.CpsService; import org.onap.slice.analysis.ms.models.MLOutputModel; import org.onap.slice.analysis.ms.models.policy.AdditionalProperties; import org.springframework.boot.test.context.SpringBootTest; @@ -55,7 +57,13 @@ public class MLMessageProcessorTest { @Mock private IConfigDbService configDbService; - + + @Mock + AaiService aaiService; + + @Mock + CpsService cpsService; + @Mock private PolicyService policyService; -- cgit 1.2.3-korg