X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=policy-agent%2Fsrc%2Ftest%2Fjava%2Forg%2Foransc%2Fpolicyagent%2Fclients%2FStdA1ClientTest.java;h=beb2ca901f78c2577b60d877e02880b62c2d56c2;hb=1178fb45f6d79fb3988b2806073aeeee3d68324e;hp=68b56f3ec0b78f66836a414c226b68e5bce96259;hpb=be2000ec2d21151b42cb559ef881695eb32e35e9;p=nonrtric.git diff --git a/policy-agent/src/test/java/org/oransc/policyagent/clients/StdA1ClientTest.java b/policy-agent/src/test/java/org/oransc/policyagent/clients/StdA1ClientTest.java index 68b56f3e..beb2ca90 100644 --- a/policy-agent/src/test/java/org/oransc/policyagent/clients/StdA1ClientTest.java +++ b/policy-agent/src/test/java/org/oransc/policyagent/clients/StdA1ClientTest.java @@ -20,18 +20,21 @@ package org.oransc.policyagent.clients; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import java.util.Arrays; +import java.util.List; -import org.json.JSONException; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; +import org.oransc.policyagent.configuration.RicConfig; import org.oransc.policyagent.repository.Policy; import reactor.core.publisher.Flux; @@ -39,21 +42,12 @@ import reactor.core.publisher.Mono; import reactor.test.StepVerifier; @ExtendWith(MockitoExtension.class) -public class StdA1ClientTest { +class StdA1ClientTest { private static final String RIC_URL = "RicUrl"; - private static final String POLICY_TYPES_IDENTITIES_URL = "/policytypes"; - private static final String POLICIES_IDENTITIES_URL = "/policies"; - private static final String POLICY_TYPES_URL = "/policytypes/"; - private static final String POLICIES_URL = "/policies/"; - private static final String POLICY_TYPE_1_NAME = "type1"; - private static final String POLICY_TYPE_2_NAME = "type2"; - private static final String POLICY_TYPE_SCHEMA_VALID = "{\"type\":\"type1\"}"; - private static final String POLICY_TYPE_SCHEMA_INVALID = "\"type\":\"type1\"}"; private static final String POLICY_1_ID = "policy1"; private static final String POLICY_2_ID = "policy2"; - private static final String POLICY_JSON_VALID = "{\"policyId\":\"policy1\"}"; - private static final String POLICY_JSON_INVALID = "\"policyId\":\"policy1\"}"; + private static final String POLICY_JSON = "{\"policyId\":\"policy1\"}"; private static final String POLICY_TYPE = "typeName"; StdA1ClientVersion1 clientUnderTest; @@ -61,98 +55,82 @@ public class StdA1ClientTest { @Mock AsyncRestClient asyncRestClientMock; + @Mock + RicConfig ricConfigMock; + @BeforeEach - public void init() { - clientUnderTest = new StdA1ClientVersion1(asyncRestClientMock); + void init() { + clientUnderTest = new StdA1ClientVersion1(asyncRestClientMock, ricConfigMock); } - @Test - public void testGetPolicyTypeIdentities() { - Mono policyTypeIds = Mono.just(Arrays.asList(POLICY_TYPE_1_NAME, POLICY_TYPE_2_NAME).toString()); - when(asyncRestClientMock.get(anyString())).thenReturn(policyTypeIds); - - Mono policyTypeIdsFlux = clientUnderTest.getPolicyTypeIdentities(); - - verify(asyncRestClientMock).get(POLICY_TYPES_IDENTITIES_URL); - StepVerifier.create(policyTypeIdsFlux).expectNextCount(1).expectComplete().verify(); + private String policiesUrl() { + return RIC_URL + "/A1-P/v1/policies"; } - @Test - public void testGetPolicyIdentities() { - Mono policyIds = Mono.just(Arrays.asList(POLICY_1_ID, POLICY_2_ID).toString()); - when(asyncRestClientMock.get(anyString())).thenReturn(policyIds); - - Mono policyIdsFlux = clientUnderTest.getPolicyIdentities(); - - verify(asyncRestClientMock).get(POLICIES_IDENTITIES_URL); - StepVerifier.create(policyIdsFlux).expectNextCount(1).expectComplete().verify(); + private String policiesBaseUrl() { + return policiesUrl() + "/"; } @Test - public void testGetValidPolicyType() { - Mono policyTypeResp = - Mono.just("{\"policySchema\": " + POLICY_TYPE_SCHEMA_VALID + ", \"statusSchema\": {} }"); - - when(asyncRestClientMock.get(anyString())).thenReturn(policyTypeResp); - - Mono policyTypeMono = clientUnderTest.getPolicyTypeSchema(POLICY_TYPE_1_NAME); - - verify(asyncRestClientMock).get(POLICY_TYPES_URL + POLICY_TYPE_1_NAME); - StepVerifier.create(policyTypeMono).expectNext(POLICY_TYPE_SCHEMA_VALID).expectComplete().verify(); + void testGetPolicyTypeIdentities() { + List policyTypeIds = clientUnderTest.getPolicyTypeIdentities().block(); + assertEquals(1, policyTypeIds.size(), "should hardcoded to one"); + assertEquals("", policyTypeIds.get(0), "should hardcoded to empty"); } @Test - public void testGetInvalidPolicyType() { - when(asyncRestClientMock.get(anyString())).thenReturn(Mono.just(POLICY_TYPE_SCHEMA_INVALID)); + void testGetPolicyIdentities() { + doReturn(RIC_URL).when(ricConfigMock).baseUrl(); + Mono policyIds = Mono.just(Arrays.asList(POLICY_1_ID, POLICY_2_ID).toString()); + when(asyncRestClientMock.get(anyString())).thenReturn(policyIds); - Mono policyTypeMono = clientUnderTest.getPolicyTypeSchema(POLICY_TYPE_1_NAME); + List result = clientUnderTest.getPolicyIdentities().block(); + assertEquals(2, result.size(), ""); - verify(asyncRestClientMock).get(POLICY_TYPES_URL + POLICY_TYPE_1_NAME); - StepVerifier.create(policyTypeMono).expectErrorMatches(throwable -> throwable instanceof JSONException) - .verify(); + verify(asyncRestClientMock).get(policiesUrl()); } @Test - public void testPutPolicyValidResponse() { - when(asyncRestClientMock.put(anyString(), anyString())).thenReturn(Mono.just(POLICY_JSON_VALID)); - - Mono policyMono = clientUnderTest - .putPolicy(A1ClientHelper.createPolicy(RIC_URL, POLICY_1_ID, POLICY_JSON_VALID, POLICY_TYPE)); - - verify(asyncRestClientMock).put(POLICIES_URL + POLICY_1_ID + "?policyTypeId=" + POLICY_TYPE, POLICY_JSON_VALID); - StepVerifier.create(policyMono).expectNext(POLICY_JSON_VALID).expectComplete().verify(); + void testGetValidPolicyType() { + String policyType = clientUnderTest.getPolicyTypeSchema(POLICY_TYPE_1_NAME).block(); + assertEquals("{}", policyType, ""); } @Test - public void testPutPolicyInvalidResponse() { - when(asyncRestClientMock.put(anyString(), anyString())).thenReturn(Mono.just(POLICY_JSON_INVALID)); + void testPutPolicyValidResponse() { + doReturn(RIC_URL).when(ricConfigMock).baseUrl(); + when(asyncRestClientMock.put(anyString(), anyString())).thenReturn(Mono.just(POLICY_JSON)); - Mono policyMono = clientUnderTest - .putPolicy(A1ClientHelper.createPolicy(RIC_URL, POLICY_1_ID, POLICY_JSON_VALID, POLICY_TYPE)); + Mono policyMono = + clientUnderTest.putPolicy(A1ClientHelper.createPolicy(RIC_URL, POLICY_1_ID, POLICY_JSON, POLICY_TYPE)); - StepVerifier.create(policyMono).expectErrorMatches(throwable -> throwable instanceof JSONException).verify(); + verify(asyncRestClientMock).put(policiesBaseUrl() + POLICY_1_ID, POLICY_JSON); + StepVerifier.create(policyMono).expectNext(POLICY_JSON).expectComplete().verify(); } @Test - public void testDeletePolicy() { - when(asyncRestClientMock.delete(POLICIES_URL + POLICY_1_ID)).thenReturn(Mono.empty()); + void testDeletePolicy() { + doReturn(RIC_URL).when(ricConfigMock).baseUrl(); + final String url = policiesBaseUrl() + POLICY_1_ID; + when(asyncRestClientMock.delete(url)).thenReturn(Mono.empty()); - Policy policy = A1ClientHelper.createPolicy(RIC_URL, POLICY_1_ID, POLICY_JSON_VALID, POLICY_TYPE); + Policy policy = A1ClientHelper.createPolicy(RIC_URL, POLICY_1_ID, POLICY_JSON, POLICY_TYPE); Mono responseMono = clientUnderTest.deletePolicy(policy); - verify(asyncRestClientMock).delete(POLICIES_URL + POLICY_1_ID); + verify(asyncRestClientMock).delete(url); StepVerifier.create(responseMono).expectComplete().verify(); } @Test - public void testDeleteAllPolicies() { + void testDeleteAllPolicies() { + doReturn(RIC_URL).when(ricConfigMock).baseUrl(); Mono policyIds = Mono.just(Arrays.asList(POLICY_1_ID, POLICY_2_ID).toString()); - when(asyncRestClientMock.get(POLICIES_IDENTITIES_URL)).thenReturn(policyIds); + when(asyncRestClientMock.get(policiesUrl())).thenReturn(policyIds); when(asyncRestClientMock.delete(anyString())).thenReturn(Mono.empty()); Flux responseFlux = clientUnderTest.deleteAllPolicies(); StepVerifier.create(responseFlux).expectComplete().verify(); - verify(asyncRestClientMock).get(POLICIES_IDENTITIES_URL); - verify(asyncRestClientMock).delete(POLICIES_URL + POLICY_1_ID); - verify(asyncRestClientMock).delete(POLICIES_URL + POLICY_2_ID); + verify(asyncRestClientMock).get(policiesUrl()); + verify(asyncRestClientMock).delete(policiesBaseUrl() + POLICY_1_ID); + verify(asyncRestClientMock).delete(policiesBaseUrl() + POLICY_2_ID); } }