This is an automated email from the ASF dual-hosted git repository.

gnodet pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 85d2642b39c1 CAMEL-24017: Fix flaky DynamicRouteIT (#24617)
85d2642b39c1 is described below

commit 85d2642b39c127ead1538b18cc25d5114bfa1f1f
Author: Guillaume Nodet <[email protected]>
AuthorDate: Sun Jul 12 09:44:20 2026 +0200

    CAMEL-24017: Fix flaky DynamicRouteIT (#24617)
    
    CAMEL-24017: Fix flaky DynamicRouteIT
    
    Add JMS consumer route startup wait and rename generic queue names to
    test-specific names to prevent cross-test interference.
    
    Co-authored-by: Claude Opus 4.6 <[email protected]>
---
 .../camel/component/jms/integration/DynamicRouteIT.java   | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git 
a/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/DynamicRouteIT.java
 
b/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/DynamicRouteIT.java
index cb5db176a426..d9fc81863ce7 100644
--- 
a/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/DynamicRouteIT.java
+++ 
b/components/camel-jms/src/test/java/org/apache/camel/component/jms/integration/DynamicRouteIT.java
@@ -17,11 +17,13 @@
 package org.apache.camel.component.jms.integration;
 
 import org.apache.camel.BindToRegistry;
+import org.apache.camel.CamelContext;
 import org.apache.camel.Exchange;
 import org.apache.camel.Header;
 import org.apache.camel.ProducerTemplate;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.jms.AbstractJMSTest;
+import org.apache.camel.component.jms.JmsTestHelper;
 import org.apache.camel.test.infra.core.CamelContextExtension;
 import org.apache.camel.test.infra.core.DefaultCamelContextExtension;
 import org.junit.jupiter.api.BeforeEach;
@@ -40,14 +42,18 @@ public class DynamicRouteIT extends AbstractJMSTest {
     private final MyBean myBean = new MyBean();
     private final String componentName = "jms";
     protected ProducerTemplate template;
+    protected CamelContext context;
 
     @Test
     void testDynamicRouteWithJms() {
-        String response = 
template.requestBody("jms:queue:request?replyTo=bar", "foo", String.class);
+        // Wait for the JMS consumer to be fully subscribed to the broker
+        JmsTestHelper.waitForJmsConsumerRoutes(context, "jmsConsumer");
+
+        String response
+                = 
template.requestBody("jms:queue:DynamicRouteIT.request?replyTo=DynamicRouteIT.reply",
 "foo", String.class);
         assertEquals("response is foo", response);
-        response = template.requestBody("jms:queue:request", "bar", 
String.class);
+        response = template.requestBody("jms:queue:DynamicRouteIT.request", 
"bar", String.class);
         assertEquals("response is bar", response);
-
     }
 
     @Test
@@ -63,7 +69,7 @@ public class DynamicRouteIT extends AbstractJMSTest {
 
         return new RouteBuilder() {
             public void configure() {
-                from("jms:queue:request")
+                from("jms:queue:DynamicRouteIT.request").routeId("jmsConsumer")
                         .dynamicRouter().method(MyDynamicRouter.class, 
"route");
                 from("direct:start")
                         .dynamicRouter(method(new MyDynamicRouter()));
@@ -107,6 +113,7 @@ public class DynamicRouteIT extends AbstractJMSTest {
 
     @BeforeEach
     void setUpRequirements() {
+        context = camelContextExtension.getContext();
         template = camelContextExtension.getProducerTemplate();
     }
 

Reply via email to