aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleFsm.java4
-rw-r--r--feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleStateActive.java2
-rw-r--r--feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/ControllerSupport.java6
-rw-r--r--feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStateActiveTest.java23
-rw-r--r--feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStatePassiveTest.java6
-rw-r--r--feature-lifecycle/src/test/java/org/onap/policy/drools/lifecycle/LifecycleStateRunningTest.java3
-rw-r--r--feature-lifecycle/src/test/resources/logback-test.xml28
7 files changed, 58 insertions, 14 deletions
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 @@
+<!--
+ ============LICENSE_START=======================================================
+ Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ ================================================================================
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ ============LICENSE_END=========================================================
+-->
+
+<configuration>
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{50}:%M:%line - %msg%n</pattern>
+ </encoder>
+ </appender>
+ <root level="INFO">
+ <appender-ref ref="STDOUT" />
+ </root>
+</configuration> \ No newline at end of file