Migrate pap startup & controllers to spring boot
[policy/pap.git] / main / src / test / java / org / onap / policy / pap / main / rest / TestPolicyStatusProvider.java
index 81ed680..8f09b7e 100644 (file)
@@ -4,6 +4,7 @@
  * ================================================================================
  * Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
  * Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
+ * Modifications Copyright (C) 2021 Nordix Foundation.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -27,6 +28,7 @@ import static org.junit.Assert.assertTrue;
 import static org.mockito.Mockito.when;
 
 import java.util.ArrayList;
+import java.util.Collection;
 import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
@@ -75,6 +77,7 @@ public class TestPolicyStatusProvider extends ProviderSuper {
         super.setUp();
 
         prov = new PolicyStatusProvider();
+        prov.initialize();
     }
 
     @Test
@@ -197,6 +200,37 @@ public class TestPolicyStatusProvider extends ProviderSuper {
         assertThat(status.getState()).isEqualTo(State.FAILURE);
     }
 
+    @Test
+    public void testGetPolicyStatusByRegexNoMatch() throws PfModelException {
+        buildPolicyStatusToReturn1();
+        final String pattern = "Hello";
+
+        final Collection<PolicyStatus> actual = prov.getByRegex(pattern);
+        assertThat(actual).isEmpty();
+    }
+
+    @Test
+    public void testGetPolicyStatusOneMatch() throws PfModelException {
+        buildPolicyStatusToReturn1();
+        final String pattern = "My(We|Po)[li]{0,3}c.A";
+
+        final Collection<PolicyStatus> actual = prov.getByRegex(pattern);
+        assertThat(actual).hasSize(1);
+
+        final String actualName = actual.iterator().next().getPolicy().getName();
+        assertThat(actualName).isEqualTo("MyPolicyA");
+    }
+
+    @Test
+    public void testGetPolicyStatusAllMatch() throws PfModelException {
+        buildPolicyStatusToReturn1();
+        final String pattern = "My(We|Po)[li]{0,3}c.{2}0*";
+
+        final Collection<PolicyStatus> actual = prov.getByRegex(pattern);
+
+        assertThat(actual).hasSize(3);
+    }
+
     private void buildPolicyStatusToReturn1() throws PfModelException {
 
         PdpPolicyStatusBuilder builder = PdpPolicyStatus.builder().pdpGroup(MY_GROUP).pdpType(MY_PDP_TYPE)