From 56be2fd26a7eb6b8ff5d2bb5b922584ae47e2dd7 Mon Sep 17 00:00:00 2001 From: Simon Martinelli Date: Fri, 29 Dec 2023 16:20:28 +0100 Subject: [PATCH] Extracted test configuration in its own class --- .../ch/martinelli/vj/TestVjApplication.java | 15 ++------------- .../ch/martinelli/vj/TestVjConfiguration.java | 18 ++++++++++++++++++ .../java/ch/martinelli/vj/ui/KaribuTest.java | 4 ++-- .../java/ch/martinelli/vj/ui/PlaywrightIT.java | 4 ++-- 4 files changed, 24 insertions(+), 17 deletions(-) create mode 100644 src/test/java/ch/martinelli/vj/TestVjConfiguration.java diff --git a/src/test/java/ch/martinelli/vj/TestVjApplication.java b/src/test/java/ch/martinelli/vj/TestVjApplication.java index 6afbc01..791982c 100644 --- a/src/test/java/ch/martinelli/vj/TestVjApplication.java +++ b/src/test/java/ch/martinelli/vj/TestVjApplication.java @@ -1,23 +1,12 @@ package ch.martinelli.vj; import org.springframework.boot.SpringApplication; -import org.springframework.boot.test.context.TestConfiguration; -import org.springframework.boot.testcontainers.service.connection.ServiceConnection; -import org.springframework.context.annotation.Bean; -import org.testcontainers.containers.PostgreSQLContainer; -import org.testcontainers.utility.DockerImageName; +import org.springframework.context.annotation.Import; -@TestConfiguration(proxyBeanMethods = false) +@Import(TestVjConfiguration.class) public class TestVjApplication { - @Bean - @ServiceConnection - PostgreSQLContainer postgresContainer() { - return new PostgreSQLContainer<>(DockerImageName.parse("postgres:latest")); - } - public static void main(String[] args) { SpringApplication.from(VjApplication::main).with(TestVjApplication.class).run(args); } - } diff --git a/src/test/java/ch/martinelli/vj/TestVjConfiguration.java b/src/test/java/ch/martinelli/vj/TestVjConfiguration.java new file mode 100644 index 0000000..c840c27 --- /dev/null +++ b/src/test/java/ch/martinelli/vj/TestVjConfiguration.java @@ -0,0 +1,18 @@ +package ch.martinelli.vj; + +import org.springframework.boot.test.context.TestConfiguration; +import org.springframework.boot.testcontainers.service.connection.ServiceConnection; +import org.springframework.context.annotation.Bean; +import org.testcontainers.containers.PostgreSQLContainer; +import org.testcontainers.utility.DockerImageName; + +@TestConfiguration(proxyBeanMethods = false) +public class TestVjConfiguration { + + @Bean + @ServiceConnection + PostgreSQLContainer postgresContainer() { + return new PostgreSQLContainer<>(DockerImageName.parse("postgres:latest")); + } + +} diff --git a/src/test/java/ch/martinelli/vj/ui/KaribuTest.java b/src/test/java/ch/martinelli/vj/ui/KaribuTest.java index 0987d68..92d80ed 100644 --- a/src/test/java/ch/martinelli/vj/ui/KaribuTest.java +++ b/src/test/java/ch/martinelli/vj/ui/KaribuTest.java @@ -1,6 +1,6 @@ package ch.martinelli.vj.ui; -import ch.martinelli.vj.TestVjApplication; +import ch.martinelli.vj.TestVjConfiguration; import com.github.mvysny.kaributesting.mockhttp.MockRequest; import com.github.mvysny.kaributesting.v10.MockVaadin; import com.github.mvysny.kaributesting.v10.Routes; @@ -23,7 +23,7 @@ import java.util.List; import java.util.stream.Collectors; -@Import(TestVjApplication.class) +@Import(TestVjConfiguration.class) @SpringBootTest public abstract class KaribuTest { diff --git a/src/test/java/ch/martinelli/vj/ui/PlaywrightIT.java b/src/test/java/ch/martinelli/vj/ui/PlaywrightIT.java index bca1d7c..2b241c5 100644 --- a/src/test/java/ch/martinelli/vj/ui/PlaywrightIT.java +++ b/src/test/java/ch/martinelli/vj/ui/PlaywrightIT.java @@ -1,6 +1,6 @@ package ch.martinelli.vj.ui; -import ch.martinelli.vj.TestVjApplication; +import ch.martinelli.vj.TestVjConfiguration; import com.microsoft.playwright.*; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterEach; @@ -11,7 +11,7 @@ import org.springframework.context.annotation.Import; -@Import(TestVjApplication.class) +@Import(TestVjConfiguration.class) @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) public abstract class PlaywrightIT {