From 0dae91aa921e33c4cbd539db39d6a8296a0a3c3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edd=C3=BA=20Mel=C3=A9ndez?= Date: Thu, 4 Sep 2025 10:02:13 -0600 Subject: [PATCH] Move Nginx tests to JUnit Jupiter --- modules/nginx/build.gradle | 8 ++++ .../testcontainers/junit/SimpleNginxTest.java | 44 +++++++++---------- 2 files changed, 30 insertions(+), 22 deletions(-) diff --git a/modules/nginx/build.gradle b/modules/nginx/build.gradle index f4c5280d4c2..b179ad33845 100644 --- a/modules/nginx/build.gradle +++ b/modules/nginx/build.gradle @@ -3,6 +3,10 @@ description = "Testcontainers :: Nginx" dependencies { api project(':testcontainers') compileOnly 'org.jetbrains:annotations:26.0.2' + + testRuntimeOnly 'org.junit.platform:junit-platform-launcher:1.11.0' + + testImplementation 'org.junit.jupiter:junit-jupiter:5.13.4' testImplementation 'org.assertj:assertj-core:3.27.4' } @@ -11,3 +15,7 @@ tasks.japicmp { "org.testcontainers.containers.NginxContainer" ] } + +test { + useJUnitPlatform() +} diff --git a/modules/nginx/src/test/java/org/testcontainers/junit/SimpleNginxTest.java b/modules/nginx/src/test/java/org/testcontainers/junit/SimpleNginxTest.java index 05a5f5767f1..1c527c27a63 100644 --- a/modules/nginx/src/test/java/org/testcontainers/junit/SimpleNginxTest.java +++ b/modules/nginx/src/test/java/org/testcontainers/junit/SimpleNginxTest.java @@ -1,9 +1,8 @@ package org.testcontainers.junit; import lombok.Cleanup; -import org.junit.BeforeClass; -import org.junit.Rule; -import org.junit.Test; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; import org.testcontainers.containers.NginxContainer; import org.testcontainers.containers.wait.strategy.HttpWaitStrategy; import org.testcontainers.utility.DockerImageName; @@ -20,23 +19,15 @@ import static org.assertj.core.api.Assertions.assertThat; -public class SimpleNginxTest { +class SimpleNginxTest { private static final DockerImageName NGINX_IMAGE = DockerImageName.parse("nginx:1.27.0-alpine3.19-slim"); private static String tmpDirectory = System.getProperty("user.home") + "/.tmp-test-container"; - // creatingContainer { - @Rule - public NginxContainer nginx = new NginxContainer(NGINX_IMAGE) - .withCopyFileToContainer(MountableFile.forHostPath(tmpDirectory), "/usr/share/nginx/html") - .waitingFor(new HttpWaitStrategy()); - - // } - @SuppressWarnings({ "Duplicates", "ResultOfMethodCallIgnored" }) - @BeforeClass - public static void setupContent() throws Exception { + @BeforeAll + static void setupContent() throws Exception { // addCustomContent { // Create a temporary dir File contentFolder = new File(tmpDirectory); @@ -53,15 +44,24 @@ public static void setupContent() throws Exception { } @Test - public void testSimple() throws Exception { - // getFromNginxServer { - URL baseUrl = nginx.getBaseUrl("http", 80); + void testSimple() throws Exception { + try ( + // creatingContainer { + NginxContainer nginx = new NginxContainer(NGINX_IMAGE) + .withCopyFileToContainer(MountableFile.forHostPath(tmpDirectory), "/usr/share/nginx/html") + .waitingFor(new HttpWaitStrategy()); + // } + ) { + nginx.start(); + // getFromNginxServer { + URL baseUrl = nginx.getBaseUrl("http", 80); - assertThat(responseFromNginx(baseUrl)) - .as("An HTTP GET from the Nginx server returns the index.html from the custom content directory") - .contains("Hello World!"); - // } - assertHasCorrectExposedAndLivenessCheckPorts(nginx); + assertThat(responseFromNginx(baseUrl)) + .as("An HTTP GET from the Nginx server returns the index.html from the custom content directory") + .contains("Hello World!"); + // } + assertHasCorrectExposedAndLivenessCheckPorts(nginx); + } } private void assertHasCorrectExposedAndLivenessCheckPorts(NginxContainer nginxContainer) {