X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=sdnc-a1-controller%2Fnorthbound%2Fnonrt-ric-api%2Fprovider%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fsdnc%2Fnorthbound%2FNonrtRicApiProviderTest.java;h=94b2f923b85a39a909b52af529c50b8b76089782;hb=97d18aedfa83bfeb9f914a1b748aa224f04fb8b5;hp=e9b86be425522bd096c55af58acad24e522d28b5;hpb=238fd97d5c8320cc8a53e04e04cfd39dcf900c4e;p=nonrtric.git diff --git a/sdnc-a1-controller/northbound/nonrt-ric-api/provider/src/test/java/org/onap/sdnc/northbound/NonrtRicApiProviderTest.java b/sdnc-a1-controller/northbound/nonrt-ric-api/provider/src/test/java/org/onap/sdnc/northbound/NonrtRicApiProviderTest.java index e9b86be4..94b2f923 100644 --- a/sdnc-a1-controller/northbound/nonrt-ric-api/provider/src/test/java/org/onap/sdnc/northbound/NonrtRicApiProviderTest.java +++ b/sdnc-a1-controller/northbound/nonrt-ric-api/provider/src/test/java/org/onap/sdnc/northbound/NonrtRicApiProviderTest.java @@ -20,14 +20,11 @@ package org.onap.sdnc.northbound; -import static org.mockito.Matchers.anyObject; import static org.mockito.Matchers.eq; import static org.mockito.Mockito.when; -import com.google.common.util.concurrent.ListenableFuture; -import com.google.gson.Gson; -import java.util.ArrayList; -import java.util.List; + import java.util.concurrent.ExecutionException; + import org.junit.Assert; import org.junit.Before; import org.junit.Test; @@ -36,35 +33,22 @@ import org.mockito.Mock; import org.mockito.internal.util.reflection.Whitebox; import org.mockito.runners.MockitoJUnitRunner; import org.onap.sdnc.northbound.provider.NonrtRicApiProvider; -import org.onap.sdnc.northbound.restadpter.NearRicUrlProvider; -import org.onap.sdnc.northbound.restadpter.RestAdapter; +import org.onap.sdnc.northbound.restadapter.RestAdapter; import org.opendaylight.controller.md.sal.binding.api.DataBroker; import org.opendaylight.controller.md.sal.binding.api.NotificationPublishService; import org.opendaylight.controller.md.sal.binding.test.AbstractConcurrentDataBrokerTest; import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.CreatePolicyInstanceInputBuilder; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.CreatePolicyInstanceOutput; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.CreatePolicyTypeInputBuilder; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.CreatePolicyTypeOutput; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.DeletePolicyInstanceInputBuilder; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.DeletePolicyInstanceOutput; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.DeletePolicyTypeInputBuilder; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.DeletePolicyTypeOutput; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetHealthCheckInputBuilder; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetHealthCheckOutput; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetNearRTRICsInputBuilder; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetNearRTRICsOutput; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetPolicyInstanceInputBuilder; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetPolicyInstanceOutput; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetPolicyInstancesInputBuilder; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetPolicyInstancesOutput; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetPolicyTypeInputBuilder; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetPolicyTypeOutput; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetPolicyTypesInputBuilder; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetPolicyTypesOutput; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetStatusInputBuilder; -import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev191002.GetStatusOutput; -import org.opendaylight.yangtools.yang.common.RpcResult; +import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev200122.DeleteA1PolicyInputBuilder; +import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev200122.DeleteA1PolicyOutput; +import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev200122.GetA1PolicyInputBuilder; +import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev200122.GetA1PolicyOutput; +import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev200122.GetA1PolicyStatusInputBuilder; +import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev200122.GetA1PolicyStatusOutput; +import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev200122.GetA1PolicyTypeInputBuilder; +import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev200122.GetA1PolicyTypeOutput; +import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev200122.PutA1PolicyInputBuilder; +import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.a1.adapter.rev200122.PutA1PolicyOutput; +import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Uri; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.http.HttpStatus; @@ -89,193 +73,78 @@ public class NonrtRicApiProviderTest extends AbstractConcurrentDataBrokerTest { protected RpcProviderRegistry mockRpcProviderRegistry; @Mock private RestAdapter restAdapter; - private NearRicUrlProvider nearRicUrlProvider; - private static String nearRtRicId = "NearRtRic1"; - private static Long policyTypeId = 11L; - private static String policyTypeInstanceId = "12"; - + private static Uri nearRtRicUrl = new Uri("http://ric1:8085"); @Before public void setUp() throws Exception { - nearRicUrlProvider = new NearRicUrlProvider(); dataBroker = getDataBroker(); - nonrtRicApiProvider = new NonrtRicApiProvider(dataBroker, mockNotificationPublishService, - mockRpcProviderRegistry); - } - - @Test - public void testCreatePolicyInstance() throws InterruptedException, ExecutionException { - CreatePolicyInstanceInputBuilder inputBuilder = new CreatePolicyInstanceInputBuilder(); - inputBuilder.setNearRtRicId(nearRtRicId); - inputBuilder.setPolicyTypeId(policyTypeId); - inputBuilder.setPolicyInstanceId(policyTypeInstanceId); - Whitebox.setInternalState(nonrtRicApiProvider, "restAdapter", restAdapter); - String uri = nearRicUrlProvider.getPolicyInstanceId(inputBuilder.build().getNearRtRicId(), - String.valueOf(inputBuilder.build().getPolicyTypeId()), inputBuilder.getPolicyInstanceId()); - ResponseEntity createPolicyInstanceResponse = new ResponseEntity<>(HttpStatus.CREATED); - when(restAdapter.put(eq(uri), anyObject())).thenReturn(createPolicyInstanceResponse); - ListenableFuture> result = - nonrtRicApiProvider.createPolicyInstance(inputBuilder.build()); - Assert.assertEquals(String.valueOf(HttpStatus.CREATED.value()), result.get().getResult().getCode()); - } - - @Test - public void testDeletePolicyInstance() throws InterruptedException, ExecutionException { - DeletePolicyInstanceInputBuilder inputBuilder = new DeletePolicyInstanceInputBuilder(); - inputBuilder.setNearRtRicId(nearRtRicId); - inputBuilder.setPolicyTypeId(policyTypeId); - inputBuilder.setPolicyInstanceId(policyTypeInstanceId); - Whitebox.setInternalState(nonrtRicApiProvider, "restAdapter", restAdapter); - String uri = nearRicUrlProvider.getPolicyInstanceId(inputBuilder.build().getNearRtRicId(), - String.valueOf(inputBuilder.build().getPolicyTypeId()), inputBuilder.getPolicyInstanceId()); - ResponseEntity deletePolicyInstanceResponse = new ResponseEntity<>(HttpStatus.NO_CONTENT); - when(restAdapter.delete(eq(uri))).thenReturn(deletePolicyInstanceResponse); - ListenableFuture> result = - nonrtRicApiProvider.deletePolicyInstance(inputBuilder.build()); - Assert.assertEquals(String.valueOf(HttpStatus.NO_CONTENT.value()), result.get().getResult().getCode()); - } - - @Test - public void testGetNearRTRICs() throws InterruptedException, ExecutionException { - GetNearRTRICsInputBuilder inputBuilder = new GetNearRTRICsInputBuilder(); - ListenableFuture> result = - nonrtRicApiProvider.getNearRTRICs(inputBuilder.build()); - Assert.assertEquals(String.valueOf(HttpStatus.OK.value()), result.get().getResult().getCode()); - } - - @Test - public void testCreatePolicyType() throws InterruptedException, ExecutionException { - CreatePolicyTypeInputBuilder inputBuilder = new CreatePolicyTypeInputBuilder(); - inputBuilder.setNearRtRicId(nearRtRicId); - inputBuilder.setPolicyTypeId(policyTypeId); - Whitebox.setInternalState(nonrtRicApiProvider, "restAdapter", restAdapter); - String uri = nearRicUrlProvider.getPolicyTypeId(inputBuilder.build().getNearRtRicId(), - String.valueOf(inputBuilder.build().getPolicyTypeId())); - ResponseEntity createPolicyTypeResponse = new ResponseEntity<>(HttpStatus.CREATED); - when(restAdapter.put(eq(uri), anyObject())).thenReturn(createPolicyTypeResponse); - ListenableFuture> result = - nonrtRicApiProvider.createPolicyType(inputBuilder.build()); - Assert.assertEquals(String.valueOf(HttpStatus.CREATED.value()), result.get().getResult().getCode()); + nonrtRicApiProvider = new NonrtRicApiProvider(dataBroker, mockNotificationPublishService, mockRpcProviderRegistry); } @Test - public void testDeletePolicyType() throws InterruptedException, ExecutionException { - DeletePolicyTypeInputBuilder inputBuilder = new DeletePolicyTypeInputBuilder(); - inputBuilder.setNearRtRicId(nearRtRicId); - inputBuilder.setPolicyTypeId(policyTypeId); + public void testGetA1Policy() throws InterruptedException, ExecutionException { + GetA1PolicyInputBuilder inputBuilder = new GetA1PolicyInputBuilder(); + inputBuilder.setNearRtRicUrl(nearRtRicUrl); Whitebox.setInternalState(nonrtRicApiProvider, "restAdapter", restAdapter); - String uri = nearRicUrlProvider.getPolicyTypeId(inputBuilder.build().getNearRtRicId(), - String.valueOf(inputBuilder.build().getPolicyTypeId())); - ResponseEntity deletePolicyTypeResponse = new ResponseEntity<>(HttpStatus.NO_CONTENT); - when(restAdapter.delete(eq(uri))).thenReturn(deletePolicyTypeResponse); - ListenableFuture> result = - nonrtRicApiProvider.deletePolicyType(inputBuilder.build()); - Assert.assertEquals(String.valueOf(HttpStatus.NO_CONTENT.value()), result.get().getResult().getCode()); + String returnedBody = "returned body"; + ResponseEntity getResponse = new ResponseEntity<>(returnedBody, HttpStatus.OK); + when(restAdapter.get(eq(nearRtRicUrl.getValue()), eq(String.class))).thenReturn(getResponse); + GetA1PolicyOutput result = nonrtRicApiProvider.getA1Policy(inputBuilder.build()).get().getResult(); + Assert.assertEquals(returnedBody, result.getBody()); + Assert.assertTrue(HttpStatus.OK.value() == result.getHttpStatus()); } @Test - public void testGetPolicyType() throws InterruptedException, ExecutionException { - GetPolicyTypeInputBuilder inputBuilder = new GetPolicyTypeInputBuilder(); - inputBuilder.setNearRtRicId(nearRtRicId); - inputBuilder.setPolicyTypeId(policyTypeId); + public void testGetA1PolicyType() throws InterruptedException, ExecutionException { + GetA1PolicyTypeInputBuilder inputBuilder = new GetA1PolicyTypeInputBuilder(); + inputBuilder.setNearRtRicUrl(nearRtRicUrl); Whitebox.setInternalState(nonrtRicApiProvider, "restAdapter", restAdapter); - String uri = nearRicUrlProvider.getPolicyTypeId(inputBuilder.build().getNearRtRicId(), - String.valueOf(inputBuilder.build().getPolicyTypeId())); - String policyType = - "{\"name\":\"Policy type 1\",\"description\":\"PT 1\",\"policy_type_id\":1,\"create_schema\":{}}"; - ResponseEntity getPolicyTypeResponse = new ResponseEntity<>(policyType, HttpStatus.OK); - when(restAdapter.get(eq(uri), eq(String.class))).thenReturn(getPolicyTypeResponse); - ListenableFuture> result = - nonrtRicApiProvider.getPolicyType(inputBuilder.build()); - Assert.assertEquals("Policy type 1", result.get().getResult().getName()); - Assert.assertEquals(String.valueOf(HttpStatus.OK.value()), result.get().getResult().getCode()); + String returnedBody = "returned body"; + ResponseEntity getResponse = new ResponseEntity<>(returnedBody, HttpStatus.OK); + when(restAdapter.get(eq(nearRtRicUrl.getValue()), eq(String.class))).thenReturn(getResponse); + GetA1PolicyTypeOutput result = nonrtRicApiProvider.getA1PolicyType(inputBuilder.build()).get().getResult(); + Assert.assertEquals(returnedBody, result.getBody()); + Assert.assertTrue(HttpStatus.OK.value() == result.getHttpStatus()); } @Test - public void testGetPolicyTypes() throws InterruptedException, ExecutionException { - GetPolicyTypesInputBuilder inputBuilder = new GetPolicyTypesInputBuilder(); - inputBuilder.setNearRtRicId(nearRtRicId); + public void testGetA1PolicyStatus() throws InterruptedException, ExecutionException { + GetA1PolicyStatusInputBuilder inputBuilder = new GetA1PolicyStatusInputBuilder(); + inputBuilder.setNearRtRicUrl(nearRtRicUrl); Whitebox.setInternalState(nonrtRicApiProvider, "restAdapter", restAdapter); - String uri = nearRicUrlProvider.getPolicyTypes(inputBuilder.build().getNearRtRicId()); - List policyTypesInteger = new ArrayList<>(); - policyTypesInteger.add(20001); - List policyTypesLong = new ArrayList<>(); - policyTypesLong.add(20001L); - ResponseEntity getPolicyTypesResponse = new ResponseEntity<>(policyTypesInteger, HttpStatus.OK); - when(restAdapter.get(eq(uri), eq(List.class))).thenReturn(getPolicyTypesResponse); - ListenableFuture> result = - nonrtRicApiProvider.getPolicyTypes(inputBuilder.build()); - Assert.assertEquals(policyTypesLong, result.get().getResult().getPolicyTypeIdList()); - Assert.assertEquals(String.valueOf(HttpStatus.OK.value()), result.get().getResult().getCode()); + String returnedBody = "returned body"; + ResponseEntity getResponse = new ResponseEntity<>(returnedBody, HttpStatus.OK); + when(restAdapter.get(eq(nearRtRicUrl.getValue()), eq(String.class))).thenReturn(getResponse); + GetA1PolicyStatusOutput result = nonrtRicApiProvider.getA1PolicyStatus(inputBuilder.build()).get().getResult(); + Assert.assertEquals(returnedBody, result.getBody()); + Assert.assertTrue(HttpStatus.OK.value() == result.getHttpStatus()); } @Test - public void testGetPolicyInstance() throws InterruptedException, ExecutionException { - GetPolicyInstanceInputBuilder inputBuilder = new GetPolicyInstanceInputBuilder(); - inputBuilder.setNearRtRicId(nearRtRicId); - inputBuilder.setPolicyTypeId(policyTypeId); - inputBuilder.setPolicyInstanceId(policyTypeInstanceId); + public void testPutA1Policy() throws InterruptedException, ExecutionException { + PutA1PolicyInputBuilder inputBuilder = new PutA1PolicyInputBuilder(); + String testPolicy = "{}"; + inputBuilder.setNearRtRicUrl(nearRtRicUrl); + inputBuilder.setBody(testPolicy); Whitebox.setInternalState(nonrtRicApiProvider, "restAdapter", restAdapter); - String uri = nearRicUrlProvider.getPolicyInstanceId(inputBuilder.build().getNearRtRicId(), - String.valueOf(inputBuilder.build().getPolicyTypeId()), inputBuilder.getPolicyInstanceId()); - String policyInstance = - "{\"scope\":{\"ue_id\":\"2\"},\"statement\":{\"priority_level\":\"1\"},\"policy_id\":\"pi12\"}"; - ResponseEntity getPolicyInstanceResponse = new ResponseEntity<>(policyInstance, HttpStatus.OK); - when(restAdapter.get(eq(uri), eq(String.class))).thenReturn(getPolicyInstanceResponse); - ListenableFuture> result = - nonrtRicApiProvider.getPolicyInstance(inputBuilder.build()); - Assert.assertEquals(policyInstance, result.get().getResult().getPolicyInstance()); - Assert.assertEquals(String.valueOf(HttpStatus.OK.value()), result.get().getResult().getCode()); + String returnedBody = "returned body"; + ResponseEntity putResponse = new ResponseEntity<>(returnedBody, HttpStatus.CREATED); + when(restAdapter.put(eq(nearRtRicUrl.getValue()), eq(testPolicy), eq(String.class))).thenReturn(putResponse); + PutA1PolicyOutput result = nonrtRicApiProvider.putA1Policy(inputBuilder.build()).get().getResult(); + Assert.assertEquals(returnedBody, result.getBody()); + Assert.assertTrue(HttpStatus.CREATED.value() == result.getHttpStatus()); } @Test - public void testGetPolicyInstances() throws InterruptedException, ExecutionException { - GetPolicyInstancesInputBuilder inputBuilder = new GetPolicyInstancesInputBuilder(); - inputBuilder.setNearRtRicId(nearRtRicId); - inputBuilder.setPolicyTypeId(policyTypeId); + public void testDeleteA1() throws InterruptedException, ExecutionException { + DeleteA1PolicyInputBuilder inputBuilder = new DeleteA1PolicyInputBuilder(); + inputBuilder.setNearRtRicUrl(nearRtRicUrl); Whitebox.setInternalState(nonrtRicApiProvider, "restAdapter", restAdapter); - String uri = nearRicUrlProvider.getPolicyInstances(inputBuilder.build().getNearRtRicId(), - String.valueOf(inputBuilder.build().getPolicyTypeId())); - List policyInstances = new ArrayList<>(); - policyInstances.add("3d2157af-6a8f-4a7c-810f-38c2f824bf12"); - ResponseEntity getPolicyInstancesResponse = new ResponseEntity<>(policyInstances, HttpStatus.OK); - when(restAdapter.get(eq(uri), eq(List.class))).thenReturn(getPolicyInstancesResponse); - ListenableFuture> result = - nonrtRicApiProvider.getPolicyInstances(inputBuilder.build()); - Assert.assertEquals(policyInstances, result.get().getResult().getPolicyInstanceIdList()); - Assert.assertEquals(String.valueOf(HttpStatus.OK.value()), result.get().getResult().getCode()); - } - @Test - public void testGetStatus() throws InterruptedException, ExecutionException { - GetStatusInputBuilder inputBuilder = new GetStatusInputBuilder(); - inputBuilder.setNearRtRicId(nearRtRicId); - inputBuilder.setPolicyTypeId(policyTypeId); - inputBuilder.setPolicyInstanceId(policyTypeInstanceId); - Whitebox.setInternalState(nonrtRicApiProvider, "restAdapter", restAdapter); - String uri = nearRicUrlProvider.getPolicyInstanceIdStatus(inputBuilder.build().getNearRtRicId(), - String.valueOf(inputBuilder.build().getPolicyTypeId()), inputBuilder.getPolicyInstanceId()); - String policyInstanceStatus = "[{\"handler_id\":\"NearRTRIC-1\",\"status\":\"enforced\"}]"; - ResponseEntity getStatusResponse = - new ResponseEntity<>(new Gson().fromJson(policyInstanceStatus, List.class), HttpStatus.OK); - when(restAdapter.get(eq(uri), eq(List.class))).thenReturn(getStatusResponse); - ListenableFuture> result = - nonrtRicApiProvider.getStatus(inputBuilder.build()); - Assert.assertEquals("enforced", result.get().getResult().getStatus()); - Assert.assertEquals(String.valueOf(HttpStatus.OK.value()), result.get().getResult().getCode()); + ResponseEntity getResponse = new ResponseEntity<>(HttpStatus.NO_CONTENT); + when(restAdapter.delete(nearRtRicUrl.getValue())).thenReturn(getResponse); + DeleteA1PolicyOutput result = nonrtRicApiProvider.deleteA1Policy(inputBuilder.build()).get().getResult(); + Assert.assertTrue(HttpStatus.NO_CONTENT.value() == result.getHttpStatus()); } - @Test - public void testGetHealthCheck() throws InterruptedException, ExecutionException { - GetHealthCheckInputBuilder inputBuilder = new GetHealthCheckInputBuilder(); - inputBuilder.setNearRtRicId(nearRtRicId); - Whitebox.setInternalState(nonrtRicApiProvider, "restAdapter", restAdapter); - String uri = nearRicUrlProvider.getHealthCheck(inputBuilder.build().getNearRtRicId()); - ResponseEntity getHealthCheckResponse = new ResponseEntity<>(HttpStatus.OK); - when(restAdapter.get(eq(uri), eq(Object.class))).thenReturn(getHealthCheckResponse); - ListenableFuture> result = - nonrtRicApiProvider.getHealthCheck(inputBuilder.build()); - Assert.assertEquals(true, result.get().getResult().isHealthStatus()); - Assert.assertEquals(String.valueOf(HttpStatus.OK.value()), result.get().getResult().getCode()); - } }