From e3022625e51549a271ff676baf81cec603ecff92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edd=C3=BA=20Mel=C3=A9ndez?= Date: Thu, 26 Feb 2026 15:18:39 -0600 Subject: [PATCH] Support apache/activemq in ActiveMQContainer --- .../activemq/ActiveMQContainer.java | 8 ++++++-- .../activemq/ActiveMQContainerTest.java | 15 +++++++++++++-- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/modules/activemq/src/main/java/org/testcontainers/activemq/ActiveMQContainer.java b/modules/activemq/src/main/java/org/testcontainers/activemq/ActiveMQContainer.java index 14814d95da9..9313efc55d6 100644 --- a/modules/activemq/src/main/java/org/testcontainers/activemq/ActiveMQContainer.java +++ b/modules/activemq/src/main/java/org/testcontainers/activemq/ActiveMQContainer.java @@ -21,7 +21,11 @@ */ public class ActiveMQContainer extends GenericContainer { - private static final DockerImageName DEFAULT_IMAGE = DockerImageName.parse("apache/activemq-classic"); + private static final DockerImageName APACHE_ACTIVEMQ_CLASSIC_IMAGE = DockerImageName.parse( + "apache/activemq-classic" + ); + + private static final DockerImageName DEFAULT_IMAGE = DockerImageName.parse("apache/activemq"); private static final int WEB_CONSOLE_PORT = 8161; @@ -45,7 +49,7 @@ public ActiveMQContainer(String image) { public ActiveMQContainer(DockerImageName dockerImageName) { super(dockerImageName); - dockerImageName.assertCompatibleWith(DEFAULT_IMAGE); + dockerImageName.assertCompatibleWith(DEFAULT_IMAGE, APACHE_ACTIVEMQ_CLASSIC_IMAGE); withExposedPorts(WEB_CONSOLE_PORT, TCP_PORT, AMQP_PORT, STOMP_PORT, MQTT_PORT, WS_PORT); waitingFor(Wait.forLogMessage(".*Apache ActiveMQ.*started.*", 1).withStartupTimeout(Duration.ofMinutes(1))); diff --git a/modules/activemq/src/test/java/org/testcontainers/activemq/ActiveMQContainerTest.java b/modules/activemq/src/test/java/org/testcontainers/activemq/ActiveMQContainerTest.java index 564ee5382e7..cb66ebba864 100644 --- a/modules/activemq/src/test/java/org/testcontainers/activemq/ActiveMQContainerTest.java +++ b/modules/activemq/src/test/java/org/testcontainers/activemq/ActiveMQContainerTest.java @@ -10,6 +10,8 @@ import lombok.SneakyThrows; import org.apache.activemq.ActiveMQConnectionFactory; import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.ValueSource; import static org.assertj.core.api.Assertions.assertThat; @@ -18,7 +20,7 @@ class ActiveMQContainerTest { @Test void test() { try ( // container { - ActiveMQContainer activemq = new ActiveMQContainer("apache/activemq-classic:5.18.3") + ActiveMQContainer activemq = new ActiveMQContainer("apache/activemq:5.18.7") // } ) { activemq.start(); @@ -29,11 +31,20 @@ void test() { } } + @ParameterizedTest + @ValueSource(strings = { "apache/activemq-classic:5.18.7", "apache/activemq:5.18.7" }) + void compatibility(String image) { + try (ActiveMQContainer activemq = new ActiveMQContainer(image)) { + activemq.start(); + assertFunctionality(activemq, false); + } + } + @Test void customCredentials() { try ( // settingCredentials { - ActiveMQContainer activemq = new ActiveMQContainer("apache/activemq-classic:5.18.3") + ActiveMQContainer activemq = new ActiveMQContainer("apache/activemq:5.18.7") .withUser("testcontainers") .withPassword("testcontainers") // }