X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=policy-agent%2Fsrc%2Ftest%2Fjava%2Forg%2Foransc%2Fpolicyagent%2Fclients%2FA1ClientImplTest.java;h=b3b5f48cefa214b0eb3e5cc7f93fc3a0577c6de2;hb=eec4647d457ca8c2ebecc86485127bd529919533;hp=3816a17da2fdf6dad4b48c583333129d691b9aa1;hpb=28363371d308c2cbd1954835a034533b53d6406a;p=nonrtric.git diff --git a/policy-agent/src/test/java/org/oransc/policyagent/clients/A1ClientImplTest.java b/policy-agent/src/test/java/org/oransc/policyagent/clients/A1ClientImplTest.java index 3816a17d..b3b5f48c 100644 --- a/policy-agent/src/test/java/org/oransc/policyagent/clients/A1ClientImplTest.java +++ b/policy-agent/src/test/java/org/oransc/policyagent/clients/A1ClientImplTest.java @@ -20,11 +20,13 @@ package org.oransc.policyagent.clients; +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.Vector; import org.json.JSONException; import org.junit.jupiter.api.BeforeEach; @@ -35,8 +37,14 @@ import org.mockito.Mock; import org.mockito.Spy; import org.mockito.junit.MockitoJUnitRunner; import org.mockito.junit.jupiter.MockitoExtension; +import org.oransc.policyagent.configuration.ImmutableRicConfig; +import org.oransc.policyagent.configuration.RicConfig; +import org.oransc.policyagent.repository.ImmutablePolicy; +import org.oransc.policyagent.repository.ImmutablePolicyType; +import org.oransc.policyagent.repository.Policy; +import org.oransc.policyagent.repository.PolicyType; +import org.oransc.policyagent.repository.Ric; -import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; import reactor.test.StepVerifier; @@ -57,6 +65,7 @@ public class A1ClientImplTest { 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_TYPE = "typeName"; @Spy A1ClientImpl a1Client; @@ -74,10 +83,9 @@ public class A1ClientImplTest { Mono policyTypeIds = Mono.just(Arrays.toString(new String[] {POLICY_TYPE_1_NAME, POLICY_TYPE_2_NAME})); when(asyncRestClientMock.get(POLICYTYPES_IDENTITIES_URL)).thenReturn(policyTypeIds); - Flux policyTypeIdsFlux = a1Client.getPolicyTypeIdentities(RIC_URL); + Mono policyTypeIdsFlux = a1Client.getPolicyTypeIdentities(RIC_URL); verify(asyncRestClientMock).get(POLICYTYPES_IDENTITIES_URL); - StepVerifier.create(policyTypeIdsFlux).expectNext(POLICY_TYPE_1_NAME, POLICY_TYPE_2_NAME).expectComplete() - .verify(); + StepVerifier.create(policyTypeIdsFlux).expectNextCount(1).expectComplete().verify(); } @Test @@ -85,9 +93,9 @@ public class A1ClientImplTest { Mono policyIds = Mono.just(Arrays.toString(new String[] {POLICY_1_ID, POLICY_2_ID})); when(asyncRestClientMock.get(POLICIES_IDENTITIES_URL)).thenReturn(policyIds); - Flux policyIdsFlux = a1Client.getPolicyIdentities(RIC_URL); + Mono policyIdsFlux = a1Client.getPolicyIdentities(RIC_URL); verify(asyncRestClientMock).get(POLICIES_IDENTITIES_URL); - StepVerifier.create(policyIdsFlux).expectNext(POLICY_1_ID, POLICY_2_ID).expectComplete().verify(); + StepVerifier.create(policyIdsFlux).expectNextCount(1).expectComplete().verify(); } @Test @@ -113,29 +121,51 @@ public class A1ClientImplTest { @Test public void testPutPolicyValidResponse() { - when(asyncRestClientMock.put(POLICIES_URL + POLICY_1_ID, POLICY_JSON_VALID)) - .thenReturn(Mono.just(POLICY_JSON_VALID)); + when(asyncRestClientMock.put(anyString(), anyString())).thenReturn(Mono.just(POLICY_JSON_VALID)); - Mono policyMono = a1Client.putPolicy(RIC_URL, POLICY_1_ID, POLICY_JSON_VALID); + Mono policyMono = + a1Client.putPolicy(createPolicy(RIC_URL, POLICY_1_ID, POLICY_JSON_VALID, POLICY_TYPE)); verify(asyncRestClientMock).put(POLICIES_URL + POLICY_1_ID, POLICY_JSON_VALID); StepVerifier.create(policyMono).expectNext(POLICY_JSON_VALID).expectComplete().verify(); } @Test public void testPutPolicyInvalidResponse() { - when(asyncRestClientMock.put(POLICIES_URL + POLICY_1_ID, POLICY_JSON_VALID)) - .thenReturn(Mono.just(POLICY_JSON_INVALID)); + when(asyncRestClientMock.put(anyString(), anyString())).thenReturn(Mono.just(POLICY_JSON_INVALID)); - Mono policyMono = a1Client.putPolicy(RIC_URL, POLICY_1_ID, POLICY_JSON_VALID); - verify(asyncRestClientMock).put(POLICIES_URL + POLICY_1_ID, POLICY_JSON_VALID); + Mono policyMono = + a1Client.putPolicy(createPolicy(RIC_URL, POLICY_1_ID, POLICY_JSON_VALID, POLICY_TYPE)); StepVerifier.create(policyMono).expectErrorMatches(throwable -> throwable instanceof JSONException).verify(); } + private Policy createPolicy(String nearRtRicUrl, String policyId, String json, String type) { + return ImmutablePolicy.builder() // + .id(policyId) // + .json(json) // + .ownerServiceName("service") // + .ric(createRic(nearRtRicUrl)) // + .type(createPolicyType(type)) // + .lastModified("now") // + .build(); + } + + private PolicyType createPolicyType(String name) { + return ImmutablePolicyType.builder().name(name).schema("schema").build(); + } + + private Ric createRic(String url) { + RicConfig cfg = ImmutableRicConfig.builder().name("ric") // + .baseUrl(url) // + .managedElementIds(new Vector(Arrays.asList("kista_1", "kista_2"))) // + .build(); + return new Ric(cfg); + } + @Test public void testDeletePolicy() { when(asyncRestClientMock.delete(POLICIES_URL + POLICY_1_ID)).thenReturn(Mono.empty()); - Mono responseMono = a1Client.deletePolicy(RIC_URL, POLICY_1_ID); + Mono responseMono = a1Client.deletePolicy(RIC_URL, POLICY_1_ID); verify(asyncRestClientMock).delete(POLICIES_URL + POLICY_1_ID); StepVerifier.create(responseMono).expectComplete().verify(); }