From 941e9121115eed7781847674db97f3bae5eeed76 Mon Sep 17 00:00:00 2001 From: danielhanrahan Date: Fri, 13 Feb 2026 10:13:30 +0000 Subject: [PATCH] Fix for intermittent MsgExecutorTest failure Use awaitility to wait until the messagesOnHold is empty. Issue-ID: POLICY-5543 Change-Id: Iaa3f3c469dc3fae99bfcee7984d5434e218ca16d Signed-off-by: danielhanrahan --- participant/participant-intermediary/pom.xml | 5 +++++ .../acm/participant/intermediary/handler/MsgExecutorTest.java | 8 +++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/participant/participant-intermediary/pom.xml b/participant/participant-intermediary/pom.xml index b0f99b943..c601a8fc1 100644 --- a/participant/participant-intermediary/pom.xml +++ b/participant/participant-intermediary/pom.xml @@ -97,5 +97,10 @@ spring-boot-starter-test test + + org.awaitility + awaitility + test + diff --git a/participant/participant-intermediary/src/test/java/org/onap/policy/clamp/acm/participant/intermediary/handler/MsgExecutorTest.java b/participant/participant-intermediary/src/test/java/org/onap/policy/clamp/acm/participant/intermediary/handler/MsgExecutorTest.java index f8eeaf21e..8e587c25f 100644 --- a/participant/participant-intermediary/src/test/java/org/onap/policy/clamp/acm/participant/intermediary/handler/MsgExecutorTest.java +++ b/participant/participant-intermediary/src/test/java/org/onap/policy/clamp/acm/participant/intermediary/handler/MsgExecutorTest.java @@ -21,6 +21,7 @@ package org.onap.policy.clamp.acm.participant.intermediary.handler; import static org.assertj.core.api.Assertions.assertThat; +import static org.awaitility.Awaitility.await; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.timeout; @@ -28,6 +29,7 @@ import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import java.util.UUID; +import java.util.concurrent.TimeUnit; import org.junit.jupiter.api.Test; import org.onap.policy.clamp.acm.participant.intermediary.comm.ParticipantMessagePublisher; import org.onap.policy.clamp.acm.participant.intermediary.handler.cache.AutomationCompositionMsg; @@ -80,7 +82,7 @@ class MsgExecutorTest { cacheProvider.addElementDefinition(compositionId, definitions, revisionIdComposition); msgExecutor.check(); verify(automationCompositionHandler, timeout(200)).handleAutomationCompositionDeploy(updateMsg); - assertThat(cacheProvider.getMessagesOnHold()).isEmpty(); + await().atMost(200, TimeUnit.MILLISECONDS).until(() -> cacheProvider.getMessagesOnHold().isEmpty()); } @Test @@ -120,7 +122,7 @@ class MsgExecutorTest { cacheProvider.initializeAutomationComposition(compositionId, automationComposition.getInstanceId(), participantDeploy, acMsg.getRevisionIdInstance()); msgExecutor.check(); - verify(automationCompositionHandler, timeout(100)).handleAutomationCompositionStateChange(stateChangeMsg); - assertThat(cacheProvider.getMessagesOnHold()).isEmpty(); + verify(automationCompositionHandler, timeout(200)).handleAutomationCompositionStateChange(stateChangeMsg); + await().atMost(200, TimeUnit.MILLISECONDS).until(() -> cacheProvider.getMessagesOnHold().isEmpty()); } } -- 2.16.6