This is an automated email from the ASF dual-hosted git repository. fmariani pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel-kafka-connector.git
commit 8eb3545cd128b81b5ca0d72743face248185dec3 Author: Croway <[email protected]> AuthorDate: Tue Mar 31 13:39:54 2026 +0200 Switch SJMS2 tests from DispatchRouter to embedded Artemis AMQP The qdrouterd container image (quay.io/interconnectedcloud/qdrouterd) has not been updated since Nov 2021 and the Apache Qpid Dispatch Router project is retired. This caused all SJMS2 integration tests to timeout on CI as the connector could never initialize against the stale broker. Replace camel-test-infra-dispatch-router with camel-test-infra-artemis using ArtemisAMQPService, which provides an embedded AMQP broker with no container dependency. The QPID JMS client and AMQP protocol are unchanged — only the broker backend switches. --- tests/itests-sjms2/pom.xml | 9 +-------- .../camel/kafkaconnector/sjms2/common/SJMS2Common.java | 10 ++++------ .../sjms2/sink/CamelSinkIdempotentJMSITCase.java | 14 +++++--------- .../kafkaconnector/sjms2/sink/CamelSinkJMSITCase.java | 14 +++++--------- .../kafkaconnector/sjms2/source/CamelSourceJMSITCase.java | 12 ++++-------- .../sjms2/source/CamelSourceJMSWithAggregation.java | 12 ++++-------- 6 files changed, 23 insertions(+), 48 deletions(-) diff --git a/tests/itests-sjms2/pom.xml b/tests/itests-sjms2/pom.xml index 6c48bd2c0a..e8445cff67 100644 --- a/tests/itests-sjms2/pom.xml +++ b/tests/itests-sjms2/pom.xml @@ -46,14 +46,7 @@ <dependency> <groupId>org.apache.camel</groupId> - <artifactId>camel-test-infra-messaging-common</artifactId> - <version>${camel.version}</version> - <scope>test</scope> - </dependency> - - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-test-infra-dispatch-router</artifactId> + <artifactId>camel-test-infra-artemis</artifactId> <version>${camel.version}</version> <scope>test</scope> </dependency> diff --git a/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/common/SJMS2Common.java b/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/common/SJMS2Common.java index 81a527f98d..042431247b 100644 --- a/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/common/SJMS2Common.java +++ b/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/common/SJMS2Common.java @@ -17,8 +17,8 @@ package org.apache.camel.kafkaconnector.sjms2.common; -import org.apache.camel.test.infra.dispatch.router.services.DispatchRouterContainer; -import org.apache.camel.test.infra.messaging.services.MessagingServiceFactory; +import org.apache.camel.test.infra.artemis.services.ArtemisService; +import org.apache.camel.test.infra.artemis.services.ArtemisServiceFactory; public final class SJMS2Common { /** @@ -30,9 +30,7 @@ public final class SJMS2Common { } - public static MessagingServiceFactory.MessagingLocalContainerService<DispatchRouterContainer> createLocalService() { - DispatchRouterContainer container = new DispatchRouterContainer(); - - return new MessagingServiceFactory.MessagingLocalContainerService<>(container, c -> container.defaultEndpoint()); + public static ArtemisService createJMSService() { + return ArtemisServiceFactory.createAMQPService(); } } diff --git a/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/sink/CamelSinkIdempotentJMSITCase.java b/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/sink/CamelSinkIdempotentJMSITCase.java index a36aa8b027..8d36752b56 100644 --- a/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/sink/CamelSinkIdempotentJMSITCase.java +++ b/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/sink/CamelSinkIdempotentJMSITCase.java @@ -34,8 +34,7 @@ import org.apache.camel.kafkaconnector.common.test.CamelSinkTestSupport; import org.apache.camel.kafkaconnector.sjms2.clients.JMSClient; import org.apache.camel.kafkaconnector.sjms2.common.SJMS2Common; import org.apache.camel.test.infra.common.TestUtils; -import org.apache.camel.test.infra.messaging.services.MessagingService; -import org.apache.camel.test.infra.messaging.services.MessagingServiceFactory; +import org.apache.camel.test.infra.artemis.services.ArtemisService; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; @@ -53,10 +52,7 @@ import static org.junit.jupiter.api.Assertions.fail; @TestInstance(TestInstance.Lifecycle.PER_CLASS) public class CamelSinkIdempotentJMSITCase extends CamelSinkTestSupport { @RegisterExtension - public static MessagingService jmsService = MessagingServiceFactory - .builder() - .addLocalMapping(SJMS2Common::createLocalService) - .build(); + public static ArtemisService jmsService = SJMS2Common.createJMSService(); private static final Logger LOG = LoggerFactory.getLogger(CamelSinkIdempotentJMSITCase.class); @@ -69,7 +65,7 @@ public class CamelSinkIdempotentJMSITCase extends CamelSinkTestSupport { Properties properties = new Properties(); properties.put("camel.component.sjms2.connection-factory", "#class:org.apache.qpid.jms.JmsConnectionFactory"); - properties.put("camel.component.sjms2.connection-factory.remoteURI", jmsService.defaultEndpoint()); + properties.put("camel.component.sjms2.connection-factory.remoteURI", jmsService.brokerUrl()); return properties; } @@ -81,7 +77,7 @@ public class CamelSinkIdempotentJMSITCase extends CamelSinkTestSupport { @BeforeEach public void setUp() { - LOG.info("JMS service running at {}", jmsService.defaultEndpoint()); + LOG.info("JMS service running at {}", jmsService.brokerUrl()); received = 0; topic = getTopicForTest(this); @@ -94,7 +90,7 @@ public class CamelSinkIdempotentJMSITCase extends CamelSinkTestSupport { JMSClient jmsClient = null; try { - jmsClient = JMSClient.newClient(jmsService.defaultEndpoint()); + jmsClient = JMSClient.newClient(jmsService.brokerUrl()); jmsClient.start(); try (MessageConsumer consumer = jmsClient.createConsumer(destinationName)) { diff --git a/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/sink/CamelSinkJMSITCase.java b/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/sink/CamelSinkJMSITCase.java index 4bc118724a..afa22fc2f2 100644 --- a/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/sink/CamelSinkJMSITCase.java +++ b/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/sink/CamelSinkJMSITCase.java @@ -29,8 +29,7 @@ import org.apache.camel.kafkaconnector.common.ConnectorPropertyFactory; import org.apache.camel.kafkaconnector.common.test.CamelSinkTestSupport; import org.apache.camel.kafkaconnector.sjms2.clients.JMSClient; import org.apache.camel.kafkaconnector.sjms2.common.SJMS2Common; -import org.apache.camel.test.infra.messaging.services.MessagingService; -import org.apache.camel.test.infra.messaging.services.MessagingServiceFactory; +import org.apache.camel.test.infra.artemis.services.ArtemisService; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; @@ -48,10 +47,7 @@ import static org.junit.jupiter.api.Assertions.fail; @TestInstance(TestInstance.Lifecycle.PER_CLASS) public class CamelSinkJMSITCase extends CamelSinkTestSupport { @RegisterExtension - public static MessagingService jmsService = MessagingServiceFactory - .builder() - .addLocalMapping(SJMS2Common::createLocalService) - .build(); + public static ArtemisService jmsService = SJMS2Common.createJMSService(); private static final Logger LOG = LoggerFactory.getLogger(CamelSinkJMSITCase.class); @@ -63,7 +59,7 @@ public class CamelSinkJMSITCase extends CamelSinkTestSupport { Properties properties = new Properties(); properties.put("camel.component.sjms2.connection-factory", "#class:org.apache.qpid.jms.JmsConnectionFactory"); - properties.put("camel.component.sjms2.connection-factory.remoteURI", jmsService.defaultEndpoint()); + properties.put("camel.component.sjms2.connection-factory.remoteURI", jmsService.brokerUrl()); return properties; } @@ -75,7 +71,7 @@ public class CamelSinkJMSITCase extends CamelSinkTestSupport { @BeforeEach public void setUp() { - LOG.info("JMS service running at {}", jmsService.defaultEndpoint()); + LOG.info("JMS service running at {}", jmsService.brokerUrl()); received = 0; topicName = getTopicForTest(this); @@ -117,7 +113,7 @@ public class CamelSinkJMSITCase extends CamelSinkTestSupport { JMSClient jmsClient = null; try { - jmsClient = JMSClient.newClient(jmsService.defaultEndpoint()); + jmsClient = JMSClient.newClient(jmsService.brokerUrl()); jmsClient.start(); try (MessageConsumer consumer = jmsClient.createConsumer(SJMS2Common.DEFAULT_JMS_QUEUE)) { diff --git a/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/source/CamelSourceJMSITCase.java b/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/source/CamelSourceJMSITCase.java index ffbee128cd..9ea24b718a 100644 --- a/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/source/CamelSourceJMSITCase.java +++ b/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/source/CamelSourceJMSITCase.java @@ -27,8 +27,7 @@ import org.apache.camel.kafkaconnector.common.test.IntegerMessageConsumer; import org.apache.camel.kafkaconnector.common.test.TestMessageConsumer; import org.apache.camel.kafkaconnector.sjms2.clients.JMSClient; import org.apache.camel.kafkaconnector.sjms2.common.SJMS2Common; -import org.apache.camel.test.infra.messaging.services.MessagingService; -import org.apache.camel.test.infra.messaging.services.MessagingServiceFactory; +import org.apache.camel.test.infra.artemis.services.ArtemisService; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -46,10 +45,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; @TestInstance(TestInstance.Lifecycle.PER_CLASS) public class CamelSourceJMSITCase extends CamelSourceTestSupport { @RegisterExtension - public static MessagingService jmsService = MessagingServiceFactory - .builder() - .addLocalMapping(SJMS2Common::createLocalService) - .build(); + public static ArtemisService jmsService = SJMS2Common.createJMSService(); private String topicName; private final int expect = 10; @@ -59,7 +55,7 @@ public class CamelSourceJMSITCase extends CamelSourceTestSupport { Properties properties = new Properties(); properties.put("camel.component.sjms2.connection-factory", "#class:org.apache.qpid.jms.JmsConnectionFactory"); - properties.put("camel.component.sjms2.connection-factory.remoteURI", jmsService.defaultEndpoint()); + properties.put("camel.component.sjms2.connection-factory.remoteURI", jmsService.brokerUrl()); return properties; } @@ -77,7 +73,7 @@ public class CamelSourceJMSITCase extends CamelSourceTestSupport { @BeforeAll public void setupClient() { - jmsClient = JMSClient.newClient(jmsService.defaultEndpoint()); + jmsClient = JMSClient.newClient(jmsService.brokerUrl()); } @Override diff --git a/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/source/CamelSourceJMSWithAggregation.java b/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/source/CamelSourceJMSWithAggregation.java index e2e130ec65..9cfa41bb23 100644 --- a/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/source/CamelSourceJMSWithAggregation.java +++ b/tests/itests-sjms2/src/test/java/org/apache/camel/kafkaconnector/sjms2/source/CamelSourceJMSWithAggregation.java @@ -28,8 +28,7 @@ import org.apache.camel.kafkaconnector.common.test.TestMessageConsumer; import org.apache.camel.kafkaconnector.sjms2.clients.JMSClient; import org.apache.camel.kafkaconnector.sjms2.common.SJMS2Common; import org.apache.camel.test.infra.common.TestUtils; -import org.apache.camel.test.infra.messaging.services.MessagingService; -import org.apache.camel.test.infra.messaging.services.MessagingServiceFactory; +import org.apache.camel.test.infra.artemis.services.ArtemisService; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -43,10 +42,7 @@ import static org.junit.jupiter.api.Assertions.fail; @TestInstance(TestInstance.Lifecycle.PER_CLASS) public class CamelSourceJMSWithAggregation extends CamelSourceTestSupport { @RegisterExtension - public static MessagingService jmsService = MessagingServiceFactory - .builder() - .addLocalMapping(SJMS2Common::createLocalService) - .build(); + public static ArtemisService jmsService = SJMS2Common.createJMSService(); private final int sentSize = 10; private final int expect = 1; @@ -83,7 +79,7 @@ public class CamelSourceJMSWithAggregation extends CamelSourceTestSupport { Properties properties = new Properties(); properties.put("camel.component.sjms2.connection-factory", "#class:org.apache.qpid.jms.JmsConnectionFactory"); - properties.put("camel.component.sjms2.connection-factory.remoteURI", jmsService.defaultEndpoint()); + properties.put("camel.component.sjms2.connection-factory.remoteURI", jmsService.brokerUrl()); return properties; } @@ -95,7 +91,7 @@ public class CamelSourceJMSWithAggregation extends CamelSourceTestSupport { @BeforeAll public void setupClient() { - jmsClient = JMSClient.newClient(jmsService.defaultEndpoint()); + jmsClient = JMSClient.newClient(jmsService.brokerUrl()); for (int i = 0; i < sentSize - 1; i++) { expectedMessage += "hello;\n";
