diff options
author | Jim Hahn <jrh3@att.com> | 2020-08-04 16:27:18 -0400 |
---|---|---|
committer | Jim Hahn <jrh3@att.com> | 2020-08-06 19:19:46 -0400 |
commit | deed677c3dc8751209d50e7d35132c929fe6800d (patch) | |
tree | 01f3149d4a03206e134d889d50834ae8d141a0ce /models-interactions/model-actors/actor.aai/src/test | |
parent | 364ef26929f06637bca03dd7bfb5e8ac69b611f8 (diff) |
Modify Actors to use properties when provided
Modified the Actors to use properties when the application provides them
instead of going to the event context for the data. This sometimes entailed
moving code out of the Operation subclass constructor that used or validated
the context data.
Combined some property names and renamed others.
Changed VF Count from AtomicInteger to Integer.
Issue-ID: POLICY-2746
Change-Id: Ib8730538309bb77d2f4f6161e9a20a49362d8972
Signed-off-by: Jim Hahn <jrh3@att.com>
Diffstat (limited to 'models-interactions/model-actors/actor.aai/src/test')
-rw-r--r-- | models-interactions/model-actors/actor.aai/src/test/java/org/onap/policy/controlloop/actor/aai/AaiCustomQueryOperationTest.java | 41 |
1 files changed, 27 insertions, 14 deletions
diff --git a/models-interactions/model-actors/actor.aai/src/test/java/org/onap/policy/controlloop/actor/aai/AaiCustomQueryOperationTest.java b/models-interactions/model-actors/actor.aai/src/test/java/org/onap/policy/controlloop/actor/aai/AaiCustomQueryOperationTest.java index 476e6432d..f1225373e 100644 --- a/models-interactions/model-actors/actor.aai/src/test/java/org/onap/policy/controlloop/actor/aai/AaiCustomQueryOperationTest.java +++ b/models-interactions/model-actors/actor.aai/src/test/java/org/onap/policy/controlloop/actor/aai/AaiCustomQueryOperationTest.java @@ -23,6 +23,7 @@ package org.onap.policy.controlloop.actor.aai; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatCode; import static org.assertj.core.api.Assertions.assertThatIllegalArgumentException; +import static org.assertj.core.api.Assertions.assertThatIllegalStateException; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; @@ -113,11 +114,12 @@ public class AaiCustomQueryOperationTest extends BasicAaiOperation { HttpParams opParams = HttpParams.builder().clientName(MY_CLIENT).path("v16/query").build(); config = new HttpConfig(blockingExecutor, opParams, HttpClientFactoryInstance.getClientFactory()); - preloadTenantData(); - - params = params.toBuilder().targetEntity(SIM_VSERVER).retry(0).timeoutSec(5).executor(blockingExecutor).build(); + params = params.toBuilder().targetEntity(SIM_VSERVER).retry(0).timeoutSec(5).executor(blockingExecutor) + .preprocessed(true).build(); oper = new AaiCustomQueryOperation(params, config); + oper.setProperty(OperationProperties.AAI_VSERVER_LINK, MY_LINK); + outcome = oper.start().get(); assertEquals(PolicyResult.SUCCESS, outcome.getResult()); @@ -129,15 +131,19 @@ public class AaiCustomQueryOperationTest extends BasicAaiOperation { public void testConstructor() { assertEquals(AaiConstants.ACTOR_NAME, oper.getActorName()); assertEquals(AaiCustomQueryOperation.NAME, oper.getName()); - assertEquals(MY_VSERVER, oper.getVserver()); // verify that it works with an empty target entity params = params.toBuilder().targetEntity("").build(); assertThatCode(() -> new AaiCustomQueryOperation(params, config)).doesNotThrowAnyException(); + } + + @Test + public void testGetVserver() { + assertEquals(MY_VSERVER, oper.getVserver()); // try without enrichment data params.getContext().getEnrichment().remove(AaiCustomQueryOperation.VSERVER_VSERVER_NAME); - assertThatIllegalArgumentException().isThrownBy(() -> new AaiCustomQueryOperation(params, config)) + assertThatIllegalArgumentException().isThrownBy(() -> oper.getVserver()) .withMessage("missing " + AaiCustomQueryOperation.VSERVER_VSERVER_NAME + " in enrichment data"); } @@ -215,7 +221,7 @@ public class AaiCustomQueryOperationTest extends BasicAaiOperation { @Test @SuppressWarnings("unchecked") - public void testMakeRequest() throws Exception { + public void testMakeRequest_testGetVserverLink() throws Exception { // preload preloadTenantData(); @@ -237,17 +243,24 @@ public class AaiCustomQueryOperationTest extends BasicAaiOperation { } @Test - @SuppressWarnings("unchecked") - public void testMakeRequestNoResourceLink() throws Exception { - // pre-load EMPTY tenant data - preloadTenantData(new StandardCoderObject()); + public void testGetVserverLinkViaProperty() throws Exception { + oper.setProperty(OperationProperties.AAI_VSERVER_LINK, MY_LINK); + assertEquals(MY_LINK, oper.getVserverLink()); + } - when(rawResponse.readEntity(String.class)).thenReturn(makeCqReply()); - when(webAsync.put(any(), any(InvocationCallback.class))).thenAnswer(provideResponse(rawResponse, 1)); + @Test + public void testGetVserverLinkNoTenantData() throws Exception { + assertThatIllegalStateException().isThrownBy(() -> oper.getVserverLink()) + .withMessage("cannot perform custom query - cannot determine resource-link"); + } - CompletableFuture<OperationOutcome> future2 = oper.start(); + @Test + public void testGetVserverLinkNoResourceLink() throws Exception { + // pre-load EMPTY tenant data + preloadTenantData(new StandardCoderObject()); - assertEquals(PolicyResult.FAILURE_EXCEPTION, getResult(future2)); + assertThatIllegalArgumentException().isThrownBy(() -> oper.getVserverLink()) + .withMessage("cannot perform custom query - no resource-link"); } private String makeTenantReply() throws Exception { |