Merge "Renamed things to fit with namechange of RicSynchronizationTask"
[nonrtric.git] / policy-agent / src / test / java / org / oransc / policyagent / utils / MockA1Client.java
index aca29f5..af8ecd4 100644 (file)
@@ -2,7 +2,7 @@
  * ========================LICENSE_START=================================
  * O-RAN-SC
  * %%
- * Copyright (C) 2019 Nordix Foundation
+ * Copyright (C) 2020 Nordix Foundation
  * %%
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -20,9 +20,7 @@
 
 package org.oransc.policyagent.utils;
 
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Map;
+import java.util.List;
 import java.util.Vector;
 
 import org.oransc.policyagent.clients.A1Client;
@@ -30,10 +28,12 @@ import org.oransc.policyagent.repository.Policies;
 import org.oransc.policyagent.repository.Policy;
 import org.oransc.policyagent.repository.PolicyType;
 import org.oransc.policyagent.repository.PolicyTypes;
+
+import reactor.core.publisher.Flux;
 import reactor.core.publisher.Mono;
 
 public class MockA1Client implements A1Client {
-    private final Map<String, Policies> policies = new HashMap<>();
+    Policies policies = new Policies();
     private final PolicyTypes policyTypes;
 
     public MockA1Client(PolicyTypes policyTypes) {
@@ -41,9 +41,9 @@ public class MockA1Client implements A1Client {
     }
 
     @Override
-    public Mono<Collection<String>> getPolicyTypeIdentities(String nearRtRicUrl) {
+    public Mono<List<String>> getPolicyTypeIdentities() {
         synchronized (this.policyTypes) {
-            Vector<String> result = new Vector<>();
+            List<String> result = new Vector<>();
             for (PolicyType p : this.policyTypes.getAll()) {
                 result.add(p.name());
             }
@@ -52,13 +52,11 @@ public class MockA1Client implements A1Client {
     }
 
     @Override
-    public Mono<Collection<String>> getPolicyIdentities(String nearRtRicUrl) {
+    public Mono<List<String>> getPolicyIdentities() {
         synchronized (this.policies) {
             Vector<String> result = new Vector<>();
-            for (Policy policy : getPolicies(nearRtRicUrl).getAll()) {
-                if (policy.ric().getConfig().baseUrl().equals(nearRtRicUrl)) {
-                    result.add(policy.id());
-                }
+            for (Policy policy : policies.getAll()) {
+                result.add(policy.id());
             }
 
             return Mono.just(result);
@@ -66,7 +64,7 @@ public class MockA1Client implements A1Client {
     }
 
     @Override
-    public Mono<String> getPolicyType(String nearRtRicUrl, String policyTypeId) {
+    public Mono<String> getPolicyTypeSchema(String policyTypeId) {
         try {
             return Mono.just(this.policyTypes.getType(policyTypeId).schema());
         } catch (Exception e) {
@@ -76,21 +74,34 @@ public class MockA1Client implements A1Client {
 
     @Override
     public Mono<String> putPolicy(Policy p) {
-        getPolicies(p.ric().getConfig().baseUrl()).put(p);
+        this.policies.put(p);
         return Mono.just("OK");
     }
 
     @Override
-    public Mono<String> deletePolicy(String nearRtRicUrl, String policyId) {
-        getPolicies(nearRtRicUrl).removeId(policyId);
+    public Mono<String> deletePolicy(Policy policy) {
+        this.policies.remove(policy);
         return Mono.just("OK");
     }
 
-    private Policies getPolicies(String url) {
-        if (!policies.containsKey(url)) {
-            policies.put(url, new Policies());
-        }
-        return policies.get(url);
+    public Policies getPolicies() {
+        return this.policies;
+    }
+
+    @Override
+    public Mono<A1ProtocolType> getProtocolVersion() {
+        return Mono.just(A1ProtocolType.STD_V1_1);
+    }
+
+    @Override
+    public Flux<String> deleteAllPolicies() {
+        this.policies.clear();
+        return Flux.empty();
+    }
+
+    @Override
+    public Mono<String> getPolicyStatus(Policy policy) {
+        return Mono.just("OK");
     }
 
 }