diff options
Diffstat (limited to 'controlloop/templates/template.demo/src')
4 files changed, 39 insertions, 14 deletions
diff --git a/controlloop/templates/template.demo/src/main/resources/ControlLoop_Template_xacml_guard.drl b/controlloop/templates/template.demo/src/main/resources/ControlLoop_Template_xacml_guard.drl index 64101ac56..6976e9937 100644 --- a/controlloop/templates/template.demo/src/main/resources/ControlLoop_Template_xacml_guard.drl +++ b/controlloop/templates/template.demo/src/main/resources/ControlLoop_Template_xacml_guard.drl @@ -473,7 +473,7 @@ rule "${policyName}.EVENT.MANAGER.OPERATION.LOCKED.GUARD_PERMITTED" $params : Params( getClosedLoopControlName() == "${closedLoopControlName}" ) $event : VirtualControlLoopEvent( closedLoopControlName == $params.getClosedLoopControlName() ) $manager : ControlLoopEventManager( closedLoopControlName == $event.closedLoopControlName, requestID == $event.requestID ) - $operation : ControlLoopOperationManager( onset.closedLoopControlName == $event.closedLoopControlName, onset.requestID == $event.requestID, getGuardApprovalStatus() == "Permit" ) + $operation : ControlLoopOperationManager( onset.closedLoopControlName == $event.closedLoopControlName, onset.requestID == $event.requestID, "Permit".equalsIgnoreCase(getGuardApprovalStatus()) ) $lock : TargetLock (requestID == $event.requestID) then // @@ -657,7 +657,7 @@ rule "${policyName}.GUARD.RESPONSE" - if("Permit".equals($guardResponse.result)){ + if("Permit".equalsIgnoreCase($guardResponse.result)){ modify($operation){setGuardApprovalStatus($guardResponse.result)}; } diff --git a/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/Util.java b/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/Util.java index f8f906867..8e8ac355c 100644 --- a/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/Util.java +++ b/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/Util.java @@ -126,6 +126,10 @@ public final class Util { return org.onap.policy.simulators.Util.buildVfcSim(); } + public static HttpServletServer buildGuardSim() throws InterruptedException, IOException { + return org.onap.policy.simulators.Util.buildGuardSim(); + } + private static String generatePolicy(String ruleContents, String closedLoopControlName, String policyScope, diff --git a/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/VCPEControlLoopTest.java b/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/VCPEControlLoopTest.java index 53c924598..9743f8808 100644 --- a/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/VCPEControlLoopTest.java +++ b/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/VCPEControlLoopTest.java @@ -28,6 +28,8 @@ import java.time.Instant; import java.util.HashMap; import java.util.UUID; +import org.junit.AfterClass; +import org.junit.BeforeClass; import org.junit.Test; import org.kie.api.runtime.KieSession; import org.kie.api.runtime.rule.FactHandle; @@ -41,7 +43,9 @@ import org.onap.policy.controlloop.VirtualControlLoopEvent; import org.onap.policy.controlloop.VirtualControlLoopNotification; import org.onap.policy.controlloop.policy.ControlLoopPolicy; import org.onap.policy.controlloop.policy.TargetType; +import org.onap.policy.drools.http.server.HttpServletServer; import org.onap.policy.drools.impl.PolicyEngineJUnitImpl; +import org.onap.policy.drools.system.PolicyEngine; import org.onap.policy.guard.PolicyGuard; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -52,7 +56,33 @@ public class VCPEControlLoopTest { private KieSession kieSession; private Util.Pair<ControlLoopPolicy, String> pair; - private PolicyEngineJUnitImpl engine; + private PolicyEngineJUnitImpl engine; + + static { + /* Set environment properties */ + PolicyEngine.manager.setEnvironmentProperty("aai.url", "http://localhost:6666"); + PolicyEngine.manager.setEnvironmentProperty("aai.username", "AAI"); + PolicyEngine.manager.setEnvironmentProperty("aai.password", "AAI"); + + PolicyEngine.manager.setEnvironmentProperty("guard.url", "http://localhost:6669/pdp/api/getDecision"); + PolicyEngine.manager.setEnvironmentProperty("guard.username", "GUARD"); + PolicyEngine.manager.setEnvironmentProperty("guard.password", "GUARD"); + } + + @BeforeClass + public static void setUpSimulator() { + try { + Util.buildAaiSim(); + Util.buildGuardSim(); + } catch (Exception e) { + fail(e.getMessage()); + } + } + + @AfterClass + public static void tearDownSimulator() { + HttpServletServer.factory.destroy(); + } @Test public void successTest() { @@ -168,7 +198,7 @@ public class VCPEControlLoopTest { * See if Guard permits this action, if it does * not then the test should fail */ - if (((VirtualControlLoopNotification)obj).message.contains("Guard result: Permit")) { + if (((VirtualControlLoopNotification)obj).message.contains("Guard result: PERMIT")) { /* * A notification should be sent out of the Policy @@ -395,13 +425,10 @@ public class VCPEControlLoopTest { event.target = "generic-vnf.vnf-id"; event.closedLoopAlarmStart = Instant.now(); event.AAI = new HashMap<>(); - event.AAI.put("cloud-region.identity-url", "foo"); - event.AAI.put("vserver.selflink", "bar"); - event.AAI.put("vserver.is-closed-loop-disabled", "false"); event.AAI.put("generic-vnf.vnf-id", "testGenericVnfId"); event.closedLoopEventStatus = ControlLoopEventStatus.ONSET; kieSession.insert(event); - Thread.sleep(1000); + Thread.sleep(2000); } /** @@ -421,9 +448,6 @@ public class VCPEControlLoopTest { event.closedLoopAlarmStart = Instant.now().minusSeconds(5); event.closedLoopAlarmEnd = Instant.now(); event.AAI = new HashMap<>(); - event.AAI.put("cloud-region.identity-url", "foo"); - event.AAI.put("vserver.selflink", "bar"); - event.AAI.put("vserver.is-closed-loop-disabled", "false"); event.AAI.put("generic-vnf.vnf-id", "testGenericVnfId"); event.closedLoopEventStatus = ControlLoopEventStatus.ABATED; kieSession.insert(event); diff --git a/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/VFWControlLoopTest.java b/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/VFWControlLoopTest.java index 4cd005471..a63344d35 100644 --- a/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/VFWControlLoopTest.java +++ b/controlloop/templates/template.demo/src/test/java/org/onap/policy/template/demo/VFWControlLoopTest.java @@ -415,9 +415,6 @@ public class VFWControlLoopTest { event.target = "generic-vnf.vnf-id"; event.closedLoopAlarmStart = Instant.now(); event.AAI = new HashMap<>(); - event.AAI.put("cloud-region.identity-url", "foo"); - event.AAI.put("vserver.selflink", "bar"); - event.AAI.put("vserver.is-closed-loop-disabled", "false"); event.AAI.put("generic-vnf.vnf-id", "testGenericVnfID"); event.closedLoopEventStatus = ControlLoopEventStatus.ONSET; kieSession.insert(event); |