X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=models-interactions%2Fmodel-actors%2Factor.appc%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fpolicy%2Fcontrolloop%2Factor%2Fappc%2FAppcOperationTest.java;h=d40fa025deabdbf5218f203edb7e3090af7e605c;hb=e3938e43b8a1f02f74368ecb75c38530285feac0;hp=30450d02a7e3017dd4be3b76015809e3ca3a169d;hpb=e8af063efc33258c32d5843d6b3aad7df0216a95;p=policy%2Fmodels.git diff --git a/models-interactions/model-actors/actor.appc/src/test/java/org/onap/policy/controlloop/actor/appc/AppcOperationTest.java b/models-interactions/model-actors/actor.appc/src/test/java/org/onap/policy/controlloop/actor/appc/AppcOperationTest.java index 30450d02a..d40fa025d 100644 --- a/models-interactions/model-actors/actor.appc/src/test/java/org/onap/policy/controlloop/actor/appc/AppcOperationTest.java +++ b/models-interactions/model-actors/actor.appc/src/test/java/org/onap/policy/controlloop/actor/appc/AppcOperationTest.java @@ -3,6 +3,7 @@ * ONAP * ================================================================================ * Copyright (C) 2020 AT&T Intellectual Property. All rights reserved. + * Modifications Copyright (C) 2023 Nordix Foundation. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,59 +23,74 @@ package org.onap.policy.controlloop.actor.appc; import static org.assertj.core.api.Assertions.assertThatIllegalArgumentException; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertSame; import java.util.Arrays; +import java.util.Collections; import java.util.Map; import java.util.TreeMap; -import org.apache.commons.lang3.tuple.Pair; +import org.junit.After; +import org.junit.AfterClass; import org.junit.Before; +import org.junit.BeforeClass; import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.junit.MockitoJUnitRunner; import org.onap.policy.appc.CommonHeader; import org.onap.policy.appc.Request; import org.onap.policy.appc.ResponseCode; import org.onap.policy.appc.ResponseStatus; +import org.onap.policy.controlloop.actorserviceprovider.OperationResult; import org.onap.policy.controlloop.actorserviceprovider.impl.BidirectionalTopicOperation.Status; -import org.onap.policy.controlloop.policy.PolicyResult; +import org.onap.policy.controlloop.actorserviceprovider.parameters.BidirectionalTopicConfig; +import org.onap.policy.controlloop.actorserviceprovider.parameters.ControlLoopOperationParams; +@RunWith(MockitoJUnitRunner.class) public class AppcOperationTest extends BasicAppcOperation { private AppcOperation oper; + @BeforeClass + public static void setUpBeforeClass() throws Exception { + // use same topic name for both sides + initBeforeClass(MY_SINK, MY_SINK); + } + + @AfterClass + public static void tearDownAfterClass() { + destroyAfterClass(); + } + /** * Sets up. */ @Before + @Override public void setUp() throws Exception { super.setUp(); - oper = new AppcOperation(params, config) { - @Override - protected Pair makeRequest(int attempt) { - return oper.makeRequest(attempt, MY_VNF); - } - }; + oper = new MyOper(params, config); } - @Test - public void testAppcOperation() { - assertEquals(DEFAULT_ACTOR, oper.getActorName()); - assertEquals(DEFAULT_OPERATION, oper.getName()); + @After + @Override + public void tearDown() { + super.tearDown(); } @Test - public void testStartPreprocessorAsync() { - assertNotNull(oper.startPreprocessorAsync()); + public void testConstructor() { + assertEquals(DEFAULT_ACTOR, oper.getActorName()); + assertEquals(DEFAULT_OPERATION, oper.getName()); } @Test public void testMakeRequest() { - Pair result = oper.makeRequest(2, MY_VNF); - String subreq = result.getLeft(); + oper.generateSubRequestId(2); + String subreq = oper.getSubRequestId(); assertNotNull(subreq); - Request request = result.getRight(); + Request request = oper.makeRequest(2, genvnf); assertEquals(DEFAULT_OPERATION, request.getAction()); assertNotNull(request.getPayload()); @@ -85,27 +101,18 @@ public class AppcOperationTest extends BasicAppcOperation { assertEquals(subreq, header.getSubRequestId()); - // a subsequent request should have a different sub-request id - result = oper.makeRequest(2, MY_VNF); - assertNotEquals(subreq, result.getLeft()); - - assertNotNull(result.getLeft()); - assertEquals(result.getLeft(), result.getRight().getCommonHeader().getSubRequestId()); + request = oper.makeRequest(2, genvnf); + assertEquals(subreq, request.getCommonHeader().getSubRequestId()); // repeat using a null payload params = params.toBuilder().payload(null).build(); - oper = new AppcOperation(params, config) { - @Override - protected Pair makeRequest(int attempt) { - return oper.makeRequest(attempt, MY_VNF); - } - }; - assertEquals(Map.of(AppcOperation.VNF_ID_KEY, MY_VNF), oper.makeRequest(2, MY_VNF).getRight().getPayload()); + oper = new MyOper(params, config); + assertEquals(Map.of(AppcOperation.VNF_ID_KEY, MY_VNF), oper.makeRequest(2, genvnf).getPayload()); } @Test public void testConvertPayload() { - Request request = oper.makeRequest(2, MY_VNF).getRight(); + Request request = oper.makeRequest(2, genvnf); // @formatter:off assertEquals( @@ -124,13 +131,8 @@ public class AppcOperationTest extends BasicAppcOperation { params = params.toBuilder().payload(payload).build(); - oper = new AppcOperation(params, config) { - @Override - protected Pair makeRequest(int attempt) { - return oper.makeRequest(attempt, MY_VNF); - } - }; - request = oper.makeRequest(2, MY_VNF).getRight(); + oper = new MyOper(params, config); + request = oper.makeRequest(2, genvnf); // @formatter:off assertEquals( @@ -150,13 +152,8 @@ public class AppcOperationTest extends BasicAppcOperation { payload.put(KEY3, "def"); params = params.toBuilder().payload(payload).build(); - oper = new AppcOperation(params, config) { - @Override - protected Pair makeRequest(int attempt) { - return oper.makeRequest(attempt, MY_VNF); - } - }; - request = oper.makeRequest(2, MY_VNF).getRight(); + oper = new MyOper(params, config); + request = oper.makeRequest(2, genvnf); payload.put(AppcOperation.VNF_ID_KEY, MY_VNF); payload.put(KEY1, "abc"); @@ -168,7 +165,8 @@ public class AppcOperationTest extends BasicAppcOperation { @Test public void testGetExpectedKeyValues() { - Request request = oper.makeRequest(2, MY_VNF).getRight(); + oper.generateSubRequestId(2); + Request request = oper.makeRequest(2, genvnf); assertEquals(Arrays.asList(request.getCommonHeader().getSubRequestId()), oper.getExpectedKeyValues(50, request)); } @@ -211,22 +209,37 @@ public class AppcOperationTest extends BasicAppcOperation { // null status response.setStatus(null); - assertSame(outcome, oper.setOutcome(outcome, PolicyResult.SUCCESS, response)); - assertEquals(PolicyResult.SUCCESS, outcome.getResult()); + assertSame(outcome, oper.setOutcome(outcome, OperationResult.SUCCESS, response)); + assertEquals(OperationResult.SUCCESS, outcome.getResult()); assertNotNull(outcome.getMessage()); + assertSame(response, outcome.getResponse()); response.setStatus(status); // null description status.setDescription(null); - assertSame(outcome, oper.setOutcome(outcome, PolicyResult.FAILURE, response)); - assertEquals(PolicyResult.FAILURE, outcome.getResult()); + assertSame(outcome, oper.setOutcome(outcome, OperationResult.FAILURE, response)); + assertEquals(OperationResult.FAILURE, outcome.getResult()); assertNotNull(outcome.getMessage()); + assertSame(response, outcome.getResponse()); status.setDescription(MY_DESCRIPTION); - for (PolicyResult result : PolicyResult.values()) { + for (OperationResult result : OperationResult.values()) { assertSame(outcome, oper.setOutcome(outcome, result, response)); assertEquals(result, outcome.getResult()); assertEquals(MY_DESCRIPTION, outcome.getMessage()); + assertSame(response, outcome.getResponse()); + } + } + + private class MyOper extends AppcOperation { + + public MyOper(ControlLoopOperationParams params, BidirectionalTopicConfig config) { + super(params, config, Collections.emptyList()); + } + + @Override + protected Request makeRequest(int attempt) { + return makeRequest(attempt, genvnf); } } }