diff options
Diffstat (limited to 'controlloop/common/eventmanager/src/test/java/org/onap/policy/drools/DroolsPolicyEngineTest.java')
-rw-r--r-- | controlloop/common/eventmanager/src/test/java/org/onap/policy/drools/DroolsPolicyEngineTest.java | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/controlloop/common/eventmanager/src/test/java/org/onap/policy/drools/DroolsPolicyEngineTest.java b/controlloop/common/eventmanager/src/test/java/org/onap/policy/drools/DroolsPolicyEngineTest.java new file mode 100644 index 000000000..d94230e5e --- /dev/null +++ b/controlloop/common/eventmanager/src/test/java/org/onap/policy/drools/DroolsPolicyEngineTest.java @@ -0,0 +1,73 @@ +/*- + * ============LICENSE_START======================================================= + * eventmanager + * ================================================================================ + * Copyright (C) 2018 Ericsson. 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========================================================= + */ + +package org.onap.policy.drools; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import org.junit.Test; +import org.onap.policy.appc.CommonHeader; +import org.onap.policy.appc.Request; +import org.onap.policy.appclcm.LCMCommonHeader; +import org.onap.policy.appclcm.LCMRequest; +import org.onap.policy.appclcm.LCMRequestWrapper; +import org.onap.policy.controlloop.ControlLoopNotification; +import org.onap.policy.controlloop.VirtualControlLoopNotification; +import org.onap.policy.drools.impl.PolicyEngineJUnitImpl; + +public class DroolsPolicyEngineTest { + @Test + public void testDroolsPolicyEngine() { + PolicyEngineJUnitImpl pe = new PolicyEngineJUnitImpl(); + assertNotNull(pe); + + pe.addListener(new TestPolicyEngineListener()); + pe.notifyListeners("TheWizardOfOz"); + + pe.subscribe("OmniBus", "TheWizardOfOz"); + + pe.deliver("OmniBus", "TheWizardOfOz", "Dorothy"); + + pe.subscribe("OmniBus", "TheWizardOfOz"); + pe.subscribe("OmniBus", "ThisTopicDoesNotExist"); + + ControlLoopNotification notification = new VirtualControlLoopNotification(); + pe.deliver("OmniBus", "TheWizardOfOz", notification); + + Request request = new Request(); + request.setCommonHeader(new CommonHeader()); + request.getCommonHeader().setSubRequestID("12321"); + pe.deliver("OmniBus", "TheWizardOfOz", request); + + LCMRequestWrapper lcmRW = new LCMRequestWrapper(); + lcmRW.setBody(new LCMRequest()); + lcmRW.getBody().setCommonHeader(new LCMCommonHeader()); + lcmRW.getBody().getCommonHeader().setSubRequestId("54321"); + pe.deliver("OmniBus", "TheWizardOfOz", lcmRW); + } + + private class TestPolicyEngineListener implements PolicyEngineListener { + @Override + public void newEventNotification(String topic) { + assertEquals("TheWizardOfOz", topic); + } + } +} |