diff options
author | Jim Hahn <jrh3@att.com> | 2020-02-25 10:49:32 -0500 |
---|---|---|
committer | Jim Hahn <jrh3@att.com> | 2020-02-25 11:16:23 -0500 |
commit | 7ad8905da8be882fd2106861a030ff4ad470615f (patch) | |
tree | 8a7839fcc3046702f4595c8ca94f88e0cf7a44b4 /models-interactions/model-actors/actor.guard/src/test | |
parent | fd9186d130a6777f93c10e7aff0289a05efed86c (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')
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()); |