Skip to content

Commit 6a02d00

Browse files
authored
Support apache/artemis in ArtemisContainer (#11590)
Fixes #11588
1 parent 8e5416d commit 6a02d00

File tree

3 files changed

+20
-5
lines changed

3 files changed

+20
-5
lines changed

docs/modules/activemq.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# ActiveMQ
22

33
Testcontainers module for [ActiveMQ](https://hub.docker.com/r/apache/activemq) and
4-
[Artemis](https://hub.docker.com/r/apache/activemq-artemis).
4+
[Artemis](https://hub.docker.com/r/apache/artemis).
55

66
## ActiveMQContainer's usage examples
77

modules/activemq/src/main/java/org/testcontainers/activemq/ArtemisContainer.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
/**
1010
* Testcontainers implementation for Apache ActiveMQ Artemis.
1111
* <p>
12+
* Supported images: {@code apache/artemis}, {@code apache/activemq-artemis}
13+
* <p>
1214
* Exposed ports:
1315
* <ul>
1416
* <li>Console: 8161</li>
@@ -24,6 +26,8 @@ public class ArtemisContainer extends GenericContainer<ArtemisContainer> {
2426

2527
private static final DockerImageName DEFAULT_IMAGE = DockerImageName.parse("apache/activemq-artemis");
2628

29+
private static final DockerImageName APACHE_ARTEMIS_IMAGE = DockerImageName.parse("apache/artemis");
30+
2731
private static final int WEB_CONSOLE_PORT = 8161;
2832

2933
// CORE,MQTT,AMQP,HORNETQ,STOMP,OPENWIRE
@@ -49,7 +53,7 @@ public ArtemisContainer(String image) {
4953

5054
public ArtemisContainer(DockerImageName dockerImageName) {
5155
super(dockerImageName);
52-
dockerImageName.assertCompatibleWith(DEFAULT_IMAGE);
56+
dockerImageName.assertCompatibleWith(DEFAULT_IMAGE, APACHE_ARTEMIS_IMAGE);
5357

5458
withExposedPorts(WEB_CONSOLE_PORT, TCP_PORT, HORNETQ_STOMP_PORT, AMQP_PORT, STOMP_PORT, MQTT_PORT, WS_PORT);
5559
waitingFor(Wait.forLogMessage(".*HTTP Server started.*", 1).withStartupTimeout(Duration.ofMinutes(1)));

modules/activemq/src/test/java/org/testcontainers/activemq/ArtemisContainerTest.java

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
import lombok.SneakyThrows;
1010
import org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory;
1111
import org.junit.jupiter.api.Test;
12+
import org.junit.jupiter.params.ParameterizedTest;
13+
import org.junit.jupiter.params.provider.ValueSource;
1214

1315
import static org.assertj.core.api.Assertions.assertThat;
1416

@@ -18,7 +20,7 @@ class ArtemisContainerTest {
1820
void defaultCredentials() {
1921
try (
2022
// container {
21-
ArtemisContainer artemis = new ArtemisContainer("apache/activemq-artemis:2.30.0-alpine")
23+
ArtemisContainer artemis = new ArtemisContainer("apache/activemq-artemis:2.32.0-alpine")
2224
// }
2325
) {
2426
artemis.start();
@@ -33,7 +35,7 @@ void defaultCredentials() {
3335
void customCredentials() {
3436
try (
3537
// settingCredentials {
36-
ArtemisContainer artemis = new ArtemisContainer("apache/activemq-artemis:2.30.0-alpine")
38+
ArtemisContainer artemis = new ArtemisContainer("apache/activemq-artemis:2.32.0-alpine")
3739
.withUser("testcontainers")
3840
.withPassword("testcontainers")
3941
// }
@@ -50,7 +52,7 @@ void customCredentials() {
5052
void allowAnonymousLogin() {
5153
try (
5254
// enableAnonymousLogin {
53-
ArtemisContainer artemis = new ArtemisContainer("apache/activemq-artemis:2.30.0-alpine")
55+
ArtemisContainer artemis = new ArtemisContainer("apache/activemq-artemis:2.32.0-alpine")
5456
.withEnv("ANONYMOUS_LOGIN", "true")
5557
// }
5658
) {
@@ -60,6 +62,15 @@ void allowAnonymousLogin() {
6062
}
6163
}
6264

65+
@ParameterizedTest
66+
@ValueSource(strings = { "apache/activemq-artemis:2.32.0-alpine", "apache/artemis:2.53.0-alpine" })
67+
void compatibility(String image) {
68+
try (ArtemisContainer artemis = new ArtemisContainer(image)) {
69+
artemis.start();
70+
assertFunctionality(artemis, false);
71+
}
72+
}
73+
6374
@SneakyThrows
6475
private void assertFunctionality(ArtemisContainer artemis, boolean anonymousLogin) {
6576
ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(artemis.getBrokerUrl());

0 commit comments

Comments
 (0)