Merge "Remove dashboard"
[nonrtric.git] / policy-agent / src / test / java / org / oransc / policyagent / clients / SdncOscA1ClientTest.java
index b451a0a..2ccd3b3 100644 (file)
@@ -20,6 +20,7 @@
 
 package org.oransc.policyagent.clients;
 
+import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.verify;
@@ -34,6 +35,7 @@ import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.extension.ExtendWith;
 import org.mockito.junit.jupiter.MockitoExtension;
 import org.mockito.stubbing.OngoingStubbing;
+import org.oransc.policyagent.repository.Policy;
 
 import reactor.core.publisher.Flux;
 import reactor.core.publisher.Mono;
@@ -44,16 +46,10 @@ public class SdncOscA1ClientTest {
     private static final String CONTROLLER_USERNAME = "username";
     private static final String CONTROLLER_PASSWORD = "password";
     private static final String RIC_1_URL = "RicUrl";
-    private static final String POLICYTYPES_IDENTITIES_URL = "/A1-ADAPTER-API:getPolicyTypeIdentities";
-    private static final String POLICIES_IDENTITIES_URL = "/A1-ADAPTER-API:getPolicyIdentities";
-    private static final String POLICYTYPES_URL = "/A1-ADAPTER-API:getPolicyType";
+    private static final String POLICY_IDENTITIES_URL = "/A1-ADAPTER-API:getPolicyIdentities";
     private static final String PUT_POLICY_URL = "/A1-ADAPTER-API:putPolicy";
     private static final String DELETE_POLICY_URL = "/A1-ADAPTER-API:deletePolicy";
-
     private static final String POLICY_TYPE_1_ID = "type1";
-    private static final String POLICY_TYPE_2_ID = "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 = "{\"scope\":{\"ueId\":\"ue1\"}}";
@@ -72,21 +68,9 @@ public class SdncOscA1ClientTest {
 
     @Test
     public void testGetPolicyTypeIdentities() {
-        SdncOscAdapterInput inputParams = ImmutableSdncOscAdapterInput.builder() //
-            .nearRtRicUrl(RIC_1_URL) //
-            .build();
-        String inputJsonString = A1ClientHelper.createInputJsonString(inputParams);
-
-        List<String> policyTypeIds = Arrays.asList(POLICY_TYPE_1_ID, POLICY_TYPE_2_ID);
-        Mono<String> policyTypeIdsResp =
-            A1ClientHelper.createOutputJsonResponse("policy-type-id-list", policyTypeIds.toString());
-        whenAsyncPostThenReturn(policyTypeIdsResp);
-
-        Mono<List<String>> returnedMono = clientUnderTest.getPolicyTypeIdentities();
-
-        verify(asyncRestClientMock).postWithAuthHeader(POLICYTYPES_IDENTITIES_URL, inputJsonString, CONTROLLER_USERNAME,
-            CONTROLLER_PASSWORD);
-        StepVerifier.create(returnedMono).expectNext(policyTypeIds).expectComplete().verify();
+        List<String> policyTypeIds = clientUnderTest.getPolicyTypeIdentities().block();
+        assertEquals(1, policyTypeIds.size(), "should hardcoded to one");
+        assertEquals("", policyTypeIds.get(0), "should hardcoded to empty");
     }
 
     @Test
@@ -102,47 +86,15 @@ public class SdncOscA1ClientTest {
 
         Mono<List<String>> returnedMono = clientUnderTest.getPolicyIdentities();
 
-        verify(asyncRestClientMock).postWithAuthHeader(POLICIES_IDENTITIES_URL, inputJsonString, CONTROLLER_USERNAME,
+        verify(asyncRestClientMock).postWithAuthHeader(POLICY_IDENTITIES_URL, inputJsonString, CONTROLLER_USERNAME,
             CONTROLLER_PASSWORD);
         StepVerifier.create(returnedMono).expectNext(policyIds).expectComplete().verify();
     }
 
     @Test
     public void testGetValidPolicyType() {
-        SdncOscAdapterInput inputParams = ImmutableSdncOscAdapterInput.builder() //
-            .nearRtRicUrl(RIC_1_URL) //
-            .policyTypeId(POLICY_TYPE_1_ID) //
-            .build();
-        String inputJsonString = A1ClientHelper.createInputJsonString(inputParams);
-
-        String policyType = "{\"policySchema\": " + POLICY_TYPE_SCHEMA_VALID + ", \"statusSchema\": {} }";
-        Mono<String> policyTypeResp = A1ClientHelper.createOutputJsonResponse("policy-type", policyType);
-        whenAsyncPostThenReturn(policyTypeResp);
-
-        Mono<String> returnedMono = clientUnderTest.getPolicyTypeSchema(POLICY_TYPE_1_ID);
-
-        verify(asyncRestClientMock).postWithAuthHeader(POLICYTYPES_URL, inputJsonString, CONTROLLER_USERNAME,
-            CONTROLLER_PASSWORD);
-        StepVerifier.create(returnedMono).expectNext(POLICY_TYPE_SCHEMA_VALID).expectComplete().verify();
-    }
-
-    @Test
-    public void testGetInvalidPolicyType() {
-        SdncOscAdapterInput inputParams = ImmutableSdncOscAdapterInput.builder() //
-            .nearRtRicUrl(RIC_1_URL) //
-            .policyTypeId(POLICY_TYPE_1_ID) //
-            .build();
-        String inputJsonString = A1ClientHelper.createInputJsonString(inputParams);
-
-        String policyType = "{\"policySchema\": " + POLICY_TYPE_SCHEMA_INVALID + ", \"statusSchema\": {} }";
-        Mono<String> policyTypeResp = A1ClientHelper.createOutputJsonResponse("policy-type", policyType);
-        whenAsyncPostThenReturn(policyTypeResp);
-
-        Mono<String> returnedMono = clientUnderTest.getPolicyTypeSchema(POLICY_TYPE_1_ID);
-
-        verify(asyncRestClientMock).postWithAuthHeader(POLICYTYPES_URL, inputJsonString, CONTROLLER_USERNAME,
-            CONTROLLER_PASSWORD);
-        StepVerifier.create(returnedMono).expectErrorMatches(throwable -> throwable instanceof JSONException).verify();
+        String policyType = clientUnderTest.getPolicyTypeSchema("").block();
+        assertEquals("{}", policyType, "");
     }
 
     @Test
@@ -229,7 +181,7 @@ public class SdncOscA1ClientTest {
         Flux<String> returnedFlux = clientUnderTest.deleteAllPolicies();
 
         StepVerifier.create(returnedFlux).expectComplete().verify();
-        verify(asyncRestClientMock).postWithAuthHeader(POLICIES_IDENTITIES_URL, inputJsonStringGetIds,
+        verify(asyncRestClientMock).postWithAuthHeader(POLICY_IDENTITIES_URL, inputJsonStringGetIds,
             CONTROLLER_USERNAME, CONTROLLER_PASSWORD);
         verify(asyncRestClientMock).postWithAuthHeader(DELETE_POLICY_URL, inputJsonStringDeletePolicy1,
             CONTROLLER_USERNAME, CONTROLLER_PASSWORD);
@@ -237,6 +189,29 @@ public class SdncOscA1ClientTest {
             CONTROLLER_USERNAME, CONTROLLER_PASSWORD);
     }
 
+    @Test
+    public void testGetStatus() {
+        SdncOscAdapterInput inputParams = ImmutableSdncOscAdapterInput.builder() //
+            .nearRtRicUrl(RIC_1_URL) //
+            .policyId(POLICY_1_ID) //
+            .build();
+        String inputJsonString = A1ClientHelper.createInputJsonString(inputParams);
+
+        String status = "STATUS";
+        Mono<String> policyStatusResp = A1ClientHelper.createOutputJsonResponse("policy-status", status);
+        whenAsyncPostThenReturn(policyStatusResp);
+
+        Policy policy = A1ClientHelper.createPolicy(RIC_1_URL, POLICY_1_ID, POLICY_JSON_VALID, POLICY_TYPE_1_ID);
+
+        String returnedStatus = clientUnderTest.getPolicyStatus(policy).block();
+
+        assertEquals(status, returnedStatus, "unexpexted status");
+
+        final String expectedUrl = "/A1-ADAPTER-API:getPolicyStatus";
+        verify(asyncRestClientMock).postWithAuthHeader(expectedUrl, inputJsonString, CONTROLLER_USERNAME,
+            CONTROLLER_PASSWORD);
+    }
+
     private OngoingStubbing<Mono<String>> whenAsyncPostThenReturn(Mono<String> response) {
         return when(asyncRestClientMock.postWithAuthHeader(anyString(), anyString(), anyString(), anyString()))
             .thenReturn(response);