summaryrefslogtreecommitdiffstats
path: root/models-interactions/model-actors/actor.guard/src/test
diff options
context:
space:
mode:
authorJim Hahn <jrh3@att.com>2020-02-25 10:49:32 -0500
committerJim Hahn <jrh3@att.com>2020-02-25 11:16:23 -0500
commit7ad8905da8be882fd2106861a030ff4ad470615f (patch)
tree8a7839fcc3046702f4595c8ca94f88e0cf7a44b4 /models-interactions/model-actors/actor.guard/src/test
parentfd9186d130a6777f93c10e7aff0289a05efed86c (diff)
Add "disabled" property to Guard Actor
Issue-ID: POLICY-2350 Signed-off-by: Jim Hahn <jrh3@att.com> Change-Id: I3e9c9aae474d4b288a162243bc492b301d1044c0
Diffstat (limited to 'models-interactions/model-actors/actor.guard/src/test')
-rw-r--r--models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardActorParamsTest.java6
-rw-r--r--models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardConfigTest.java8
-rw-r--r--models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardOperationTest.java40
-rw-r--r--models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardParamsTest.java6
4 files changed, 57 insertions, 3 deletions
diff --git a/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardActorParamsTest.java b/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardActorParamsTest.java
index 1c256090e..0fef3bd29 100644
--- a/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardActorParamsTest.java
+++ b/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardActorParamsTest.java
@@ -65,6 +65,12 @@ public class GuardActorParamsTest {
}
@Test
+ public void testIsDisabled() {
+ // disabled by default
+ assertFalse(params.isDisabled());
+ }
+
+ @Test
public void testValidate() {
assertTrue(params.validate(CONTAINER).isValid());
diff --git a/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardConfigTest.java b/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardConfigTest.java
index f94d122d9..49c1c916a 100644
--- a/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardConfigTest.java
+++ b/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardConfigTest.java
@@ -21,7 +21,9 @@
package org.onap.policy.controlloop.actor.guard;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertSame;
+import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.when;
import java.util.concurrent.Executor;
@@ -85,8 +87,14 @@ public class GuardConfigTest {
// repeat, with minimal parameters
params = GuardParams.builder().clientName(MY_CLIENT).path(PATH).timeoutSec(TIMEOUT).build();
config = new GuardConfig(executor, params, factory);
+ assertFalse(config.isDisabled());
actual = Util.translate("", config.makeRequest(), DecisionRequest.class);
assertEquals(new DecisionRequest(), actual);
+
+ // try with disabled=true
+ params = params.toBuilder().disabled(true).build();
+ config = new GuardConfig(executor, params, factory);
+ assertTrue(config.isDisabled());
}
}
diff --git a/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardOperationTest.java b/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardOperationTest.java
index bd23a818b..a43292a65 100644
--- a/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardOperationTest.java
+++ b/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardOperationTest.java
@@ -26,14 +26,17 @@ import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import java.util.Map;
import java.util.TreeMap;
import java.util.concurrent.CompletableFuture;
+import java.util.function.Consumer;
import org.junit.Before;
import org.junit.Test;
+import org.mockito.Mock;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.controlloop.actor.test.BasicHttpOperation;
import org.onap.policy.controlloop.actorserviceprovider.OperationOutcome;
@@ -44,6 +47,12 @@ import org.onap.policy.models.decisions.concepts.DecisionResponse;
public class GuardOperationTest extends BasicHttpOperation<DecisionRequest> {
+ @Mock
+ private Consumer<OperationOutcome> started;
+ @Mock
+ private Consumer<OperationOutcome> completed;
+
+ private GuardConfig guardConfig;
private GuardOperation oper;
/**
@@ -53,12 +62,14 @@ public class GuardOperationTest extends BasicHttpOperation<DecisionRequest> {
public void setUp() throws Exception {
super.setUpBasic();
- GuardConfig cguard = mock(GuardConfig.class);
- when(cguard.makeRequest()).thenAnswer(args -> new TreeMap<>(Map.of("action", "guard")));
+ guardConfig = mock(GuardConfig.class);
+ when(guardConfig.makeRequest()).thenAnswer(args -> new TreeMap<>(Map.of("action", "guard")));
- config = cguard;
+ config = guardConfig;
initConfig();
+ params = params.toBuilder().startCallback(started).completeCallback(completed).build();
+
oper = new GuardOperation(params, config);
}
@@ -87,6 +98,29 @@ public class GuardOperationTest extends BasicHttpOperation<DecisionRequest> {
assertEquals(PolicyResult.SUCCESS, future2.get().getResult());
}
+ /**
+ * Tests startOperationAsync() when the guard is disabled.
+ */
+ @Test
+ public void testStartOperationAsyncDisabled() throws Exception {
+ // indicate that it's disabled
+ when(guardConfig.isDisabled()).thenReturn(true);
+
+ CompletableFuture<OperationOutcome> future2 = oper.start();
+ executor.runAll(100);
+
+ verify(client, never()).post(any(), any(), any(), any());
+
+ // should already be done
+ assertTrue(future2.isDone());
+
+ assertEquals(PolicyResult.SUCCESS, future2.get().getResult());
+
+ // ensure callbacks were invoked
+ verify(started).accept(any());
+ verify(completed).accept(any());
+ }
+
@Test
public void testMakeRequest() throws CoderException {
verifyPayload("makeReqStd.json", makePayload());
diff --git a/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardParamsTest.java b/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardParamsTest.java
index b4148857a..172368349 100644
--- a/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardParamsTest.java
+++ b/models-interactions/model-actors/actor.guard/src/test/java/org/onap/policy/controlloop/actor/guard/GuardParamsTest.java
@@ -51,6 +51,12 @@ public class GuardParamsTest {
}
@Test
+ public void testIsDisabled() {
+ // disabled by default
+ assertFalse(params.isDisabled());
+ }
+
+ @Test
public void testValidate() {
assertTrue(params.validate(CONTAINER).isValid());