From a2e7d569974b018235e821d7bc0bb7a43d75aa2c Mon Sep 17 00:00:00 2001 From: jhh Date: Tue, 16 Apr 2019 23:09:49 -0500 Subject: Add response section to PAP status message Change-Id: I26bf9f515c8639c030e8beb9e8b37a6a632da686 Issue-ID: POLICY-1655 Signed-off-by: jhh --- .../onap/policy/drools/lifecycle/LifecycleFsm.java | 4 ++-- .../drools/lifecycle/LifecycleStateActive.java | 2 ++ .../policy/drools/lifecycle/ControllerSupport.java | 6 +++++ .../drools/lifecycle/LifecycleStateActiveTest.java | 23 ++++++++++-------- .../lifecycle/LifecycleStatePassiveTest.java | 6 +++++ .../lifecycle/LifecycleStateRunningTest.java | 3 +-- .../src/test/resources/logback-test.xml | 28 ++++++++++++++++++++++ 7 files changed, 58 insertions(+), 14 deletions(-) create mode 100644 feature-lifecycle/src/test/resources/logback-test.xml diff --git a/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleFsm.java b/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleFsm.java index 8e1e9937..ada29ede 100644 --- a/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleFsm.java +++ b/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleFsm.java @@ -147,7 +147,7 @@ public class LifecycleFsm implements Startable { * Start a controller event. */ public synchronized void start(@NonNull PolicyController controller) { - logger.info("lifecycle event: start controller: {}" + controller.getName()); + logger.info("lifecycle event: start controller: {}", controller.getName()); for (ToscaPolicyTypeIdentifier id : controller.getPolicyTypes()) { policyTypesMap.put(id, controller); } @@ -237,7 +237,7 @@ public class LifecycleFsm implements Startable { status.setResponse(response); } - return client.send(statusPayload(state)); + return client.send(status); } protected void setGroupAction(String group, String subgroup) { diff --git a/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleStateActive.java b/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleStateActive.java index 38ea0917..2dacdd1d 100644 --- a/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleStateActive.java +++ b/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleStateActive.java @@ -20,6 +20,7 @@ package org.onap.policy.drools.lifecycle; +import java.util.Collections; import lombok.NonNull; import lombok.ToString; import org.onap.policy.drools.system.PolicyController; @@ -53,6 +54,7 @@ public class LifecycleStateActive extends LifecycleStateRunning { @Override protected boolean stateChangeToPassive(PdpStateChange change) { + undeployPolicies(Collections.emptyList()); fsm.transitionToAction(new LifecycleStatePassive(fsm)); return fsm.statusAction(response(change.getRequestId(), PdpResponseStatus.SUCCESS, null)); } diff --git a/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/ControllerSupport.java b/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/ControllerSupport.java index d5ac423a..c22a0d88 100644 --- a/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/ControllerSupport.java +++ b/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/ControllerSupport.java @@ -58,6 +58,12 @@ public class ControllerSupport { * Create controller. */ public PolicyController createController() throws IOException { + try { + getController(); + } catch (IllegalArgumentException e) { + ; + } + ReleaseId coordinates = KieUtils.installArtifact(Paths.get(JUNIT_KMODULE_PATH).toFile(), Paths.get(JUNIT_KMODULE_POM_PATH).toFile(), diff --git a/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStateActiveTest.java b/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStateActiveTest.java index 554f2ef0..d28ab14c 100644 --- a/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStateActiveTest.java +++ b/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStateActiveTest.java @@ -195,22 +195,16 @@ public class LifecycleStateActiveTest extends LifecycleStateRunningTest { PdpUpdate update = new PdpUpdate(); update.setName(NetworkUtil.getHostname()); - update.setPdpGroup("Z"); - update.setPdpSubgroup("z"); + update.setPdpGroup("W"); + update.setPdpSubgroup("w"); update.setPolicies(Collections.emptyList()); - long originalInterval = fsm.getStatusTimerSeconds(); - long interval = 10 * originalInterval; - update.setPdpHeartbeatIntervalMs(interval * 1000L); - fsm.start(controllerSupport.getController()); - assertTrue(fsm.update(update)); assertEquals(PdpState.ACTIVE, fsm.state()); - assertEquals(interval, fsm.getStatusTimerSeconds()); - assertEquals("Z", fsm.getGroup()); - assertEquals("z", fsm.getSubgroup()); + assertEquals("W", fsm.getGroup()); + assertEquals("w", fsm.getSubgroup()); String restartV1 = new String(Files.readAllBytes(Paths.get("src/test/resources/tosca-policy-operational-restart.json"))); @@ -316,6 +310,15 @@ public class LifecycleStateActiveTest extends LifecycleStateRunningTest { assertTrue(factPolicies.stream().anyMatch((ff) -> Objects.equals(toscaPolicyFirewall, ff))); assertEquals(2, fsm.policiesMap.size()); + long originalInterval = fsm.getStatusTimerSeconds(); + long interval = 10 * originalInterval; + update.setPdpHeartbeatIntervalMs(interval * 1000L); + + assertTrue(fsm.update(update)); + + assertEquals(PdpState.ACTIVE, fsm.state()); + assertEquals(interval, fsm.getStatusTimerSeconds()); + fsm.shutdown(); } } diff --git a/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStatePassiveTest.java b/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStatePassiveTest.java index 775dc8b0..b96779aa 100644 --- a/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStatePassiveTest.java +++ b/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStatePassiveTest.java @@ -180,6 +180,12 @@ public class LifecycleStatePassiveTest extends LifecycleStateRunningTest { assertTrue(fsm.update(update)); + int qlength = fsm.client.getSink().getRecentEvents().length; + PdpStatus lastStatus = new StandardCoder() + .decode(fsm.client.getSink().getRecentEvents()[qlength - 1], PdpStatus.class); + assertEquals(update.getRequestId(), lastStatus.getRequestId()); + assertEquals(update.getRequestId(), lastStatus.getResponse().getResponseTo()); + assertEquals(PdpState.PASSIVE, fsm.state()); assertEquals(interval, fsm.getStatusTimerSeconds()); assertEquals("Z", fsm.getGroup()); diff --git a/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStateRunningTest.java b/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStateRunningTest.java index 6da9dc12..25cce3a9 100644 --- a/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStateRunningTest.java +++ b/feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStateRunningTest.java @@ -42,7 +42,7 @@ public abstract class LifecycleStateRunningTest { LoggerUtil.setLevel(LoggerUtil.ROOT_LOGGER, "INFO"); LoggerUtil.setLevel("org.onap.policy.common.endpoints", "WARN"); LoggerUtil.setLevel("org.onap.policy.drools", "INFO"); - SystemPersistence.manager.setConfigurationDir("src/test/resources"); + SystemPersistence.manager.setConfigurationDir("target/test-classes"); controllerSupport.createController(); } @@ -51,7 +51,6 @@ public abstract class LifecycleStateRunningTest { */ @AfterClass public static void tearDown() { - controllerSupport.destroyController(); try { Files.deleteIfExists(Paths.get(SystemPersistence.manager.getConfigurationPath().toString(), CONTROLLER_NAME + "-controller.properties.bak")); diff --git a/feature-lifecycle/src/test/resources/logback-test.xml b/feature-lifecycle/src/test/resources/logback-test.xml new file mode 100644 index 00000000..bde0b5e8 --- /dev/null +++ b/feature-lifecycle/src/test/resources/logback-test.xml @@ -0,0 +1,28 @@ + + + + + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{50}:%M:%line - %msg%n + + + + + + \ No newline at end of file -- cgit 1.2.3-korg