Skip to content

Commit 1cba0c5

Browse files
authored
Move Azure tests to JUnit Jupiter (#10727)
1 parent 19dcc5e commit 1cba0c5

File tree

5 files changed

+159
-167
lines changed

5 files changed

+159
-167
lines changed

modules/azure/build.gradle

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@ dependencies {
66
// TODO use JDK's HTTP client and/or Apache HttpClient5
77
shaded 'com.squareup.okhttp3:okhttp:5.1.0'
88

9+
testRuntimeOnly 'org.junit.platform:junit-platform-launcher:1.11.0'
10+
911
testImplementation 'org.assertj:assertj-core:3.27.4'
12+
testImplementation 'org.junit.jupiter:junit-jupiter:5.13.4'
1013
testImplementation platform("com.azure:azure-sdk-bom:1.2.32")
1114
testImplementation 'com.azure:azure-cosmos'
1215
testImplementation 'com.azure:azure-storage-blob'
@@ -16,3 +19,7 @@ dependencies {
1619
testImplementation 'com.azure:azure-messaging-servicebus'
1720
testImplementation 'com.microsoft.sqlserver:mssql-jdbc:13.2.0.jre8'
1821
}
22+
23+
test {
24+
useJUnitPlatform()
25+
}

modules/azure/src/test/java/org/testcontainers/azure/AzuriteContainerTest.java

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -11,22 +11,22 @@
1111
import com.azure.storage.queue.QueueClient;
1212
import com.azure.storage.queue.QueueServiceClient;
1313
import com.azure.storage.queue.QueueServiceClientBuilder;
14-
import org.junit.AfterClass;
15-
import org.junit.BeforeClass;
16-
import org.junit.Test;
14+
import org.junit.jupiter.api.AfterAll;
15+
import org.junit.jupiter.api.BeforeAll;
16+
import org.junit.jupiter.api.Test;
1717
import org.testcontainers.utility.MountableFile;
1818

1919
import java.util.Properties;
2020

2121
import static org.assertj.core.api.Assertions.assertThat;
2222

23-
public class AzuriteContainerTest {
23+
class AzuriteContainerTest {
2424

2525
private static final String PASSWORD = "changeit";
2626

2727
private static Properties originalSystemProperties;
2828

29-
@BeforeClass
29+
@BeforeAll
3030
public static void captureOriginalSystemProperties() {
3131
originalSystemProperties = (Properties) System.getProperties().clone();
3232
System.setProperty(
@@ -37,13 +37,13 @@ public static void captureOriginalSystemProperties() {
3737
System.setProperty("javax.net.ssl.trustStoreType", "PKCS12");
3838
}
3939

40-
@AfterClass
40+
@AfterAll
4141
public static void restoreOriginalSystemProperties() {
4242
System.setProperties(originalSystemProperties);
4343
}
4444

4545
@Test
46-
public void testWithBlobServiceClient() {
46+
void testWithBlobServiceClient() {
4747
try (
4848
// emulatorContainer {
4949
AzuriteContainer emulator = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")
@@ -56,7 +56,7 @@ public void testWithBlobServiceClient() {
5656
}
5757

5858
@Test
59-
public void testWithQueueServiceClient() {
59+
void testWithQueueServiceClient() {
6060
try (AzuriteContainer emulator = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")) {
6161
emulator.start();
6262
assertThat(emulator.getConnectionString()).contains("QueueEndpoint=http://");
@@ -65,7 +65,7 @@ public void testWithQueueServiceClient() {
6565
}
6666

6767
@Test
68-
public void testWithTableServiceClient() {
68+
void testWithTableServiceClient() {
6969
try (AzuriteContainer emulator = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")) {
7070
emulator.start();
7171
assertThat(emulator.getConnectionString()).contains("TableEndpoint=http://");
@@ -74,7 +74,7 @@ public void testWithTableServiceClient() {
7474
}
7575

7676
@Test
77-
public void testWithBlobServiceClientWithSslUsingPfx() {
77+
void testWithBlobServiceClientWithSslUsingPfx() {
7878
try (
7979
AzuriteContainer emulator = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")
8080
.withSsl(MountableFile.forClasspathResource("/keystore.pfx"), PASSWORD)
@@ -86,7 +86,7 @@ public void testWithBlobServiceClientWithSslUsingPfx() {
8686
}
8787

8888
@Test
89-
public void testWithQueueServiceClientWithSslUsingPfx() {
89+
void testWithQueueServiceClientWithSslUsingPfx() {
9090
try (
9191
AzuriteContainer emulator = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")
9292
.withSsl(MountableFile.forClasspathResource("/keystore.pfx"), PASSWORD)
@@ -98,7 +98,7 @@ public void testWithQueueServiceClientWithSslUsingPfx() {
9898
}
9999

100100
@Test
101-
public void testWithTableServiceClientWithSslUsingPfx() {
101+
void testWithTableServiceClientWithSslUsingPfx() {
102102
try (
103103
AzuriteContainer emulator = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")
104104
.withSsl(MountableFile.forClasspathResource("/keystore.pfx"), PASSWORD)
@@ -110,7 +110,7 @@ public void testWithTableServiceClientWithSslUsingPfx() {
110110
}
111111

112112
@Test
113-
public void testWithBlobServiceClientWithSslUsingPem() {
113+
void testWithBlobServiceClientWithSslUsingPem() {
114114
try (
115115
AzuriteContainer emulator = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")
116116
.withSsl(
@@ -125,7 +125,7 @@ public void testWithBlobServiceClientWithSslUsingPem() {
125125
}
126126

127127
@Test
128-
public void testWithQueueServiceClientWithSslUsingPem() {
128+
void testWithQueueServiceClientWithSslUsingPem() {
129129
try (
130130
AzuriteContainer emulator = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")
131131
.withSsl(
@@ -140,7 +140,7 @@ public void testWithQueueServiceClientWithSslUsingPem() {
140140
}
141141

142142
@Test
143-
public void testWithTableServiceClientWithSslUsingPem() {
143+
void testWithTableServiceClientWithSslUsingPem() {
144144
try (
145145
AzuriteContainer emulator = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")
146146
.withSsl(
@@ -155,7 +155,7 @@ public void testWithTableServiceClientWithSslUsingPem() {
155155
}
156156

157157
@Test
158-
public void testTwoAccountKeysWithBlobServiceClient() {
158+
void testTwoAccountKeysWithBlobServiceClient() {
159159
try (
160160
// withTwoAccountKeys {
161161
AzuriteContainer emulator = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")
@@ -194,7 +194,7 @@ public void testTwoAccountKeysWithBlobServiceClient() {
194194
}
195195

196196
@Test
197-
public void testMultipleAccountsWithBlobServiceClient() {
197+
void testMultipleAccountsWithBlobServiceClient() {
198198
try (
199199
// withMoreAccounts {
200200
AzuriteContainer emulator = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")

modules/azure/src/test/java/org/testcontainers/azure/EventHubsEmulatorContainerTest.java

Lines changed: 21 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,7 @@
77
import com.azure.messaging.eventhubs.EventHubProducerClient;
88
import com.azure.messaging.eventhubs.models.EventPosition;
99
import com.azure.messaging.eventhubs.models.PartitionEvent;
10-
import org.junit.Rule;
11-
import org.junit.Test;
10+
import org.junit.jupiter.api.Test;
1211
import org.testcontainers.containers.Network;
1312
import org.testcontainers.utility.MountableFile;
1413

@@ -19,36 +18,29 @@
1918
import static org.assertj.core.api.Assertions.assertThat;
2019
import static org.awaitility.Awaitility.waitAtMost;
2120

22-
public class EventHubsEmulatorContainerTest {
23-
24-
@Rule
25-
// network {
26-
public Network network = Network.newNetwork();
27-
28-
// }
29-
30-
@Rule
31-
// azuriteContainer {
32-
public AzuriteContainer azuriteContainer = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")
33-
.withNetwork(network);
34-
35-
// }
36-
37-
@Rule
38-
// emulatorContainer {
39-
public EventHubsEmulatorContainer emulator = new EventHubsEmulatorContainer(
40-
"mcr.microsoft.com/azure-messaging/eventhubs-emulator:2.0.1"
41-
)
42-
.acceptLicense()
43-
.withNetwork(network)
44-
.withConfig(MountableFile.forClasspathResource("/eventhubs_config.json"))
45-
.withAzuriteContainer(azuriteContainer);
46-
47-
// }
21+
class EventHubsEmulatorContainerTest {
4822

4923
@Test
5024
public void testWithEventHubsClient() {
5125
try (
26+
// network {
27+
Network network = Network.newNetwork();
28+
// }
29+
// azuriteContainer {
30+
AzuriteContainer azuriteContainer = new AzuriteContainer("mcr.microsoft.com/azure-storage/azurite:3.33.0")
31+
.withNetwork(network);
32+
// }
33+
// emulatorContainer {
34+
EventHubsEmulatorContainer emulator = new EventHubsEmulatorContainer(
35+
"mcr.microsoft.com/azure-messaging/eventhubs-emulator:2.0.1"
36+
)
37+
.acceptLicense()
38+
.withNetwork(network)
39+
.withConfig(MountableFile.forClasspathResource("/eventhubs_config.json"))
40+
.withAzuriteContainer(azuriteContainer);
41+
// }
42+
) {
43+
emulator.start();
5244
// createProducerAndConsumer {
5345
EventHubProducerClient producer = new EventHubClientBuilder()
5446
.connectionString(emulator.getConnectionString())
@@ -60,9 +52,8 @@ public void testWithEventHubsClient() {
6052
.fullyQualifiedNamespace("emulatorNs1")
6153
.eventHubName("eh1")
6254
.consumerGroup("cg1")
63-
.buildConsumerClient()
55+
.buildConsumerClient();
6456
// }
65-
) {
6657
producer.send(Collections.singletonList(new EventData("test")));
6758

6859
waitAtMost(Duration.ofSeconds(30))

modules/azure/src/test/java/org/testcontainers/azure/ServiceBusEmulatorContainerTest.java

Lines changed: 68 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@
99
import com.azure.messaging.servicebus.ServiceBusSenderClient;
1010
import com.github.dockerjava.api.model.Capability;
1111
import org.assertj.core.api.Assertions;
12-
import org.junit.Rule;
13-
import org.junit.Test;
12+
import org.junit.jupiter.api.Test;
1413
import org.testcontainers.containers.MSSQLServerContainer;
1514
import org.testcontainers.containers.Network;
1615
import org.testcontainers.utility.MountableFile;
@@ -23,83 +22,78 @@
2322
import static org.assertj.core.api.Assertions.assertThat;
2423
import static org.awaitility.Awaitility.await;
2524

26-
public class ServiceBusEmulatorContainerTest {
27-
28-
@Rule
29-
// network {
30-
public Network network = Network.newNetwork();
31-
32-
// }
33-
34-
@Rule
35-
// sqlContainer {
36-
public MSSQLServerContainer<?> mssqlServerContainer = new MSSQLServerContainer<>(
37-
"mcr.microsoft.com/mssql/server:2022-CU14-ubuntu-22.04"
38-
)
39-
.acceptLicense()
40-
.withPassword("yourStrong(!)Password")
41-
.withCreateContainerCmdModifier(cmd -> {
42-
cmd.getHostConfig().withCapAdd(Capability.SYS_PTRACE);
43-
})
44-
.withNetwork(network);
45-
46-
// }
47-
48-
@Rule
49-
// emulatorContainer {
50-
public ServiceBusEmulatorContainer emulator = new ServiceBusEmulatorContainer(
51-
"mcr.microsoft.com/azure-messaging/servicebus-emulator:1.1.2"
52-
)
53-
.acceptLicense()
54-
.withConfig(MountableFile.forClasspathResource("/service-bus-config.json"))
55-
.withNetwork(network)
56-
.withMsSqlServerContainer(mssqlServerContainer);
57-
58-
// }
25+
class ServiceBusEmulatorContainerTest {
5926

6027
@Test
61-
public void testWithClient() {
62-
assertThat(emulator.getConnectionString()).startsWith("Endpoint=sb://");
28+
void testWithClient() {
29+
try (
30+
// network {
31+
Network network = Network.newNetwork();
32+
// }
33+
// sqlContainer {
34+
MSSQLServerContainer<?> mssqlServerContainer = new MSSQLServerContainer<>(
35+
"mcr.microsoft.com/mssql/server:2022-CU14-ubuntu-22.04"
36+
)
37+
.acceptLicense()
38+
.withPassword("yourStrong(!)Password")
39+
.withCreateContainerCmdModifier(cmd -> {
40+
cmd.getHostConfig().withCapAdd(Capability.SYS_PTRACE);
41+
})
42+
.withNetwork(network);
43+
// }
44+
// emulatorContainer {
45+
ServiceBusEmulatorContainer emulator = new ServiceBusEmulatorContainer(
46+
"mcr.microsoft.com/azure-messaging/servicebus-emulator:1.1.2"
47+
)
48+
.acceptLicense()
49+
.withConfig(MountableFile.forClasspathResource("/service-bus-config.json"))
50+
.withNetwork(network)
51+
.withMsSqlServerContainer(mssqlServerContainer);
52+
// }
53+
) {
54+
emulator.start();
55+
assertThat(emulator.getConnectionString()).startsWith("Endpoint=sb://");
6356

64-
// senderClient {
65-
ServiceBusSenderClient senderClient = new ServiceBusClientBuilder()
66-
.connectionString(emulator.getConnectionString())
67-
.sender()
68-
.queueName("queue.1")
69-
.buildClient();
70-
// }
57+
// senderClient {
58+
ServiceBusSenderClient senderClient = new ServiceBusClientBuilder()
59+
.connectionString(emulator.getConnectionString())
60+
.sender()
61+
.queueName("queue.1")
62+
.buildClient();
63+
// }
7164

72-
await()
73-
.atMost(20, TimeUnit.SECONDS)
74-
.ignoreException(ServiceBusException.class)
75-
.until(() -> {
76-
senderClient.sendMessage(new ServiceBusMessage("Hello, Testcontainers!"));
77-
return true;
78-
});
79-
senderClient.close();
65+
await()
66+
.atMost(20, TimeUnit.SECONDS)
67+
.ignoreException(ServiceBusException.class)
68+
.until(() -> {
69+
senderClient.sendMessage(new ServiceBusMessage("Hello, Testcontainers!"));
70+
return true;
71+
});
72+
senderClient.close();
8073

81-
final List<String> received = new CopyOnWriteArrayList<>();
82-
Consumer<ServiceBusReceivedMessageContext> messageConsumer = m -> {
83-
received.add(m.getMessage().getBody().toString());
84-
m.complete();
85-
};
86-
Consumer<ServiceBusErrorContext> errorConsumer = e -> Assertions.fail("Unexpected error: " + e);
87-
// processorClient {
88-
ServiceBusProcessorClient processorClient = new ServiceBusClientBuilder()
89-
.connectionString(emulator.getConnectionString())
90-
.processor()
91-
.queueName("queue.1")
92-
.processMessage(messageConsumer)
93-
.processError(errorConsumer)
94-
.buildProcessorClient();
95-
// }
96-
processorClient.start();
74+
final List<String> received = new CopyOnWriteArrayList<>();
75+
Consumer<ServiceBusReceivedMessageContext> messageConsumer = m -> {
76+
received.add(m.getMessage().getBody().toString());
77+
m.complete();
78+
};
79+
Consumer<ServiceBusErrorContext> errorConsumer = e -> Assertions.fail("Unexpected error: " + e);
80+
// processorClient {
81+
ServiceBusProcessorClient processorClient = new ServiceBusClientBuilder()
82+
.connectionString(emulator.getConnectionString())
83+
.processor()
84+
.queueName("queue.1")
85+
.processMessage(messageConsumer)
86+
.processError(errorConsumer)
87+
.buildProcessorClient();
88+
// }
89+
processorClient.start();
9790

98-
await()
99-
.atMost(20, TimeUnit.SECONDS)
100-
.untilAsserted(() -> {
101-
assertThat(received).hasSize(1).containsExactlyInAnyOrder("Hello, Testcontainers!");
102-
});
103-
processorClient.close();
91+
await()
92+
.atMost(20, TimeUnit.SECONDS)
93+
.untilAsserted(() -> {
94+
assertThat(received).hasSize(1).containsExactlyInAnyOrder("Hello, Testcontainers!");
95+
});
96+
processorClient.close();
97+
}
10498
}
10599
}

0 commit comments

Comments
 (0)