diff options
Diffstat (limited to 'controlloop/common/rules-test/src')
3 files changed, 21 insertions, 14 deletions
diff --git a/controlloop/common/rules-test/src/main/java/org/onap/policy/controlloop/common/rules/test/BaseRuleTest.java b/controlloop/common/rules-test/src/main/java/org/onap/policy/controlloop/common/rules/test/BaseRuleTest.java index 171a2acea..0baac9e8c 100644 --- a/controlloop/common/rules-test/src/main/java/org/onap/policy/controlloop/common/rules/test/BaseRuleTest.java +++ b/controlloop/common/rules-test/src/main/java/org/onap/policy/controlloop/common/rules/test/BaseRuleTest.java @@ -29,8 +29,6 @@ import java.util.function.Supplier; import java.util.stream.Collectors; import lombok.AccessLevel; import lombok.Getter; - -import org.junit.Ignore; import org.junit.Test; import org.onap.policy.appc.Request; import org.onap.policy.appclcm.AppcLcmDmaapWrapper; @@ -39,6 +37,7 @@ import org.onap.policy.common.utils.coder.StandardCoder; import org.onap.policy.common.utils.coder.StandardCoderInstantAsMillis; import org.onap.policy.controlloop.ControlLoopNotificationType; import org.onap.policy.controlloop.VirtualControlLoopNotification; +import org.onap.policy.controlloop.eventmanager.ControlLoopEventManager2; import org.onap.policy.drools.system.PolicyController; import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicy; import org.onap.policy.sdnr.PciMessage; @@ -245,9 +244,6 @@ public abstract class BaseRuleTest { * to obtain a lock since it is a different target. After processing of all events * there should only be the policy and params objects left in memory. */ - // Ignoring test due to TimeoutException (for some reason this test fails only on docker build) - // https://jenkins.onap.org/job/policy-drools-applications-maven-docker-stage-master/294/ - @Ignore @Test public void testDuplicatesEvents() { policyClMgt = topics.createListener(POLICY_CL_MGT_TOPIC, VirtualControlLoopNotification.class, controller); @@ -257,6 +253,8 @@ public abstract class BaseRuleTest { policy = rules.setupPolicyFromFile(DUPLICATES_TOSCA_COMPLIANT_POLICY); assertEquals(2, controller.getDrools().factCount(rules.getControllerName())); + final long initCount = getCreateCount(); + /* * Inject ONSET events over the DCAE topic. First and last have the same target * entity, but different request IDs - only one should succeed. The middle one is @@ -266,9 +264,6 @@ public abstract class BaseRuleTest { topics.inject(DCAE_TOPIC, DUPLICATES_ONSET_2); topics.inject(DCAE_TOPIC, DUPLICATES_ONSET_1, UUID.randomUUID().toString()); - // one should immediately generate a FINAL failure - waitForFinal(policy, policyClMgt, ControlLoopNotificationType.FINAL_FAILURE); - // should see two restarts for (int count = 0; count < 2; ++count) { AppcLcmDmaapWrapper appcreq = appcLcmRead.await(req -> APPC_RESTART_OP.equals(req.getRpcName())); @@ -287,6 +282,9 @@ public abstract class BaseRuleTest { .sorted().collect(Collectors.toList()); assertEquals(List.of("duplicate-VNF", "vCPE_Infrastructure_vGMUX_demo_app").toString(), actual.toString()); + + long added = getCreateCount() - initCount; + assertEquals(2, added); } // VCPE @@ -649,6 +647,10 @@ public abstract class BaseRuleTest { waitForFinalSuccess(policy, policyClMgt); } + protected long getCreateCount() { + return ControlLoopEventManager2.getCreateCount(); + } + /** * Waits for a OPERATION SUCCESS transaction notification. */ diff --git a/controlloop/common/rules-test/src/test/java/org/onap/policy/controlloop/common/rules/test/BaseRuleTestTest.java b/controlloop/common/rules-test/src/test/java/org/onap/policy/controlloop/common/rules/test/BaseRuleTestTest.java index 0753aacd3..cfa9c49eb 100644 --- a/controlloop/common/rules-test/src/test/java/org/onap/policy/controlloop/common/rules/test/BaseRuleTestTest.java +++ b/controlloop/common/rules-test/src/test/java/org/onap/policy/controlloop/common/rules/test/BaseRuleTestTest.java @@ -25,6 +25,7 @@ import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @@ -32,6 +33,7 @@ import static org.mockito.Mockito.when; import java.util.LinkedList; import java.util.Map; import java.util.Queue; +import java.util.concurrent.atomic.AtomicLong; import java.util.function.Function; import java.util.function.Predicate; import java.util.function.Supplier; @@ -262,18 +264,22 @@ public class BaseRuleTestTest { @Test public void testTestDuplicatesEvents() { + // the test expects the count to be incremented by 2 between calls + AtomicLong count = new AtomicLong(5); + base = spy(base); + when(base.getCreateCount()).thenAnswer(args -> count.getAndAdd(2)); + enqueueAppcLcm("restart", "restart"); - enqueueClMgt(ControlLoopNotificationType.FINAL_FAILURE); enqueueClMgt(ControlLoopNotificationType.FINAL_SUCCESS); enqueueClMgt(ControlLoopNotificationType.FINAL_SUCCESS); - clMgtQueue.get(1).setAai(Map.of("generic-vnf.vnf-id", "duplicate-VNF")); - clMgtQueue.get(2).setAai(Map.of("generic-vnf.vnf-id", "vCPE_Infrastructure_vGMUX_demo_app")); + clMgtQueue.get(0).setAai(Map.of("generic-vnf.vnf-id", "duplicate-VNF")); + clMgtQueue.get(1).setAai(Map.of("generic-vnf.vnf-id", "vCPE_Infrastructure_vGMUX_demo_app")); base.testDuplicatesEvents(); assertEquals(0, permitCount); - assertEquals(3, finalCount); + assertEquals(2, finalCount); assertTrue(appcLcmQueue.isEmpty()); assertTrue(clMgtQueue.isEmpty()); diff --git a/controlloop/common/rules-test/src/test/java/org/onap/policy/controlloop/common/rules/test/NamedRunnerTest.java b/controlloop/common/rules-test/src/test/java/org/onap/policy/controlloop/common/rules/test/NamedRunnerTest.java index 6ee526e4f..fea440541 100644 --- a/controlloop/common/rules-test/src/test/java/org/onap/policy/controlloop/common/rules/test/NamedRunnerTest.java +++ b/controlloop/common/rules-test/src/test/java/org/onap/policy/controlloop/common/rules/test/NamedRunnerTest.java @@ -65,8 +65,7 @@ public class NamedRunnerTest { */ @Test @Ignore - @SuppressWarnings("java:S1607") - public void testIgnore() { + public void testIgnore() { // NOSONAR fail("should not run"); } |