From 75bb19ffa09536168277917f48ab590d613930ba Mon Sep 17 00:00:00 2001 From: Olivier von Dach Date: Sat, 20 May 2023 21:39:51 +0200 Subject: [PATCH] fixed environments, internalized main test classes --- build.gradle.kts | 4 +--- doc/tech/architecture.md | 1 - .../edu/obya/blueprint/basic/at/BasicAT.kt | 6 +++--- .../edu/obya/blueprint/client/at/ClientAT.kt | 8 ++++---- .../client/at/api/ClientWebApiClient.kt | 2 +- .../problemsolving/at/ProblemSolvingAT.kt | 6 +++--- src/acceptanceTest/resources/application-at.yml | 9 +++++++++ .../resources/application-test.yml | 17 ----------------- .../cdc/pact/provider/ClientPactProviderTest.kt | 4 ++-- ...application-test.yml => application-cdc.yml} | 2 +- 10 files changed, 24 insertions(+), 35 deletions(-) create mode 100644 src/acceptanceTest/resources/application-at.yml delete mode 100644 src/acceptanceTest/resources/application-test.yml rename src/contractTest/resources/{application-test.yml => application-cdc.yml} (87%) diff --git a/build.gradle.kts b/build.gradle.kts index a67a441..2bd45f4 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -99,9 +99,7 @@ dependencies { exclude(group = "junit", module = "junit") } testImplementation("org.springframework.security:spring-security-test") - testImplementation("io.zonky.test:embedded-database-spring-test:${property("embedded-database-spring-test.version")}") { - exclude("net.java.dev.jna", "jna") - } + testImplementation("io.zonky.test:embedded-database-spring-test:${property("embedded-database-spring-test.version")}") testImplementation("io.projectreactor:reactor-test") testImplementation("io.mockk:mockk:${property("mockk.version")}") testImplementation("com.ninja-squad:springmockk:${property("springmockk.version")}") diff --git a/doc/tech/architecture.md b/doc/tech/architecture.md index 38f59f5..0501bed 100644 --- a/doc/tech/architecture.md +++ b/doc/tech/architecture.md @@ -6,7 +6,6 @@ - [Component view](https://www.structurizr.com/share/38199/diagrams#blueprint-api-components) ## AppMap -- [E2E from API layer](https://appmap-viewer.herokuapp.com/appmap/appmap.html?appmap=https://vondacho.github.io/arch-blueprint-java/appmap/edu_obya_blueprint_customer_adapter_rest_CustomerEndpointIT_shouldCreateAndModifyAndDeleteCustomer.appmap.json) - [E2E from Service layer](https://appmap-viewer.herokuapp.com/appmap/appmap.html?appmap=https://vondacho.github.io/arch-blueprint-java/appmap/edu_obya_blueprint_customer_application_CustomerServiceIT_shouldCreateAndFindAndModifyAndRemoveACustomer.appmap.json) - [E2E from Data layer](https://appmap-viewer.herokuapp.com/appmap/appmap.html?appmap=https://vondacho.github.io/arch-blueprint-java/appmap/edu_obya_blueprint_customer_adapter_jpa_CustomerRepositoryIT_shouldCreateAndFindAndModifyAndRemoveACustomer.appmap.json) diff --git a/src/acceptanceTest/kotlin/edu/obya/blueprint/basic/at/BasicAT.kt b/src/acceptanceTest/kotlin/edu/obya/blueprint/basic/at/BasicAT.kt index f51afcf..7e01aa6 100644 --- a/src/acceptanceTest/kotlin/edu/obya/blueprint/basic/at/BasicAT.kt +++ b/src/acceptanceTest/kotlin/edu/obya/blueprint/basic/at/BasicAT.kt @@ -11,11 +11,11 @@ import org.springframework.boot.test.context.SpringBootTest @Suite @SelectClasspathResource("features/basic") @ConfigurationParameter(key = Constants.GLUE_PROPERTY_NAME, value = "edu.obya.blueprint.basic.at") -class BasicAT +internal class BasicAT @CucumberContextConfiguration @SpringBootTest -class BasicATBootstrap +internal class BasicATBootstrap @SpringBootConfiguration -class BasicATSpringBootConfiguration +internal class BasicATSpringBootConfiguration diff --git a/src/acceptanceTest/kotlin/edu/obya/blueprint/client/at/ClientAT.kt b/src/acceptanceTest/kotlin/edu/obya/blueprint/client/at/ClientAT.kt index 19db777..ecf65e6 100644 --- a/src/acceptanceTest/kotlin/edu/obya/blueprint/client/at/ClientAT.kt +++ b/src/acceptanceTest/kotlin/edu/obya/blueprint/client/at/ClientAT.kt @@ -29,14 +29,14 @@ import org.springframework.test.context.ActiveProfiles @Suite @SelectClasspathResource("features/client") @ConfigurationParameter(key = Constants.GLUE_PROPERTY_NAME, value = "edu.obya.blueprint.client.at") -class ClientAT +internal class ClientAT -@ActiveProfiles("test", "r2dbc") +@ActiveProfiles("test", "r2dbc", "at") @AutoConfigureEmbeddedDatabase @EnableAutoConfiguration @CucumberContextConfiguration @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT) -class ClientATBootstrap { +internal class ClientATBootstrap { @Autowired lateinit var clientState: ClientState @@ -67,4 +67,4 @@ class ClientATBootstrap { } @SpringBootConfiguration -class ClientATSpringBootConfiguration \ No newline at end of file +internal class ClientATSpringBootConfiguration \ No newline at end of file diff --git a/src/acceptanceTest/kotlin/edu/obya/blueprint/client/at/api/ClientWebApiClient.kt b/src/acceptanceTest/kotlin/edu/obya/blueprint/client/at/api/ClientWebApiClient.kt index 9908eb8..d9cbd1b 100644 --- a/src/acceptanceTest/kotlin/edu/obya/blueprint/client/at/api/ClientWebApiClient.kt +++ b/src/acceptanceTest/kotlin/edu/obya/blueprint/client/at/api/ClientWebApiClient.kt @@ -20,7 +20,7 @@ import reactor.core.publisher.Mono import kotlin.io.encoding.Base64 import kotlin.io.encoding.ExperimentalEncodingApi -class ClientWebApiClient(private val webClient: WebClient) : edu.obya.blueprint.client.at.api.ClientApiClient { +class ClientWebApiClient(private val webClient: WebClient) : ClientApiClient { override fun addClient(input: TestClientInput): Mono> { return webClient.post().uri("clients") diff --git a/src/acceptanceTest/kotlin/edu/obya/blueprint/problemsolving/at/ProblemSolvingAT.kt b/src/acceptanceTest/kotlin/edu/obya/blueprint/problemsolving/at/ProblemSolvingAT.kt index e7fe3e6..19a0ca6 100644 --- a/src/acceptanceTest/kotlin/edu/obya/blueprint/problemsolving/at/ProblemSolvingAT.kt +++ b/src/acceptanceTest/kotlin/edu/obya/blueprint/problemsolving/at/ProblemSolvingAT.kt @@ -11,11 +11,11 @@ import org.springframework.boot.test.context.SpringBootTest @Suite @SelectClasspathResource("features/problemsolving") @ConfigurationParameter(key = Constants.GLUE_PROPERTY_NAME, value = "edu.obya.blueprint.problemsolving.at") -class ProblemSolvingAT +internal class ProblemSolvingAT @CucumberContextConfiguration @SpringBootTest -class ProblemSolvingATBootstrap +internal class ProblemSolvingATBootstrap @SpringBootConfiguration -class ProblemSolvingATSpringBootConfiguration +internal class ProblemSolvingATSpringBootConfiguration diff --git a/src/acceptanceTest/resources/application-at.yml b/src/acceptanceTest/resources/application-at.yml new file mode 100644 index 0000000..517fc4b --- /dev/null +++ b/src/acceptanceTest/resources/application-at.yml @@ -0,0 +1,9 @@ +server: + port: 9090 + address: localhost + +zonky: + test: + database: + provider: DOCKER + type: POSTGRES diff --git a/src/acceptanceTest/resources/application-test.yml b/src/acceptanceTest/resources/application-test.yml deleted file mode 100644 index 2d496e7..0000000 --- a/src/acceptanceTest/resources/application-test.yml +++ /dev/null @@ -1,17 +0,0 @@ -server: - port: 9090 - address: localhost - -logging: - level: - edu.obya.blueprint: info - org.flywaydb: info - org.springframework: info -# io.r2dbc.postgresql.QUERY: DEBUG # for queries -# io.r2dbc.postgresql.PARAM: DEBUG # for parameters - -zonky: - test: - database: - provider: DOCKER - type: POSTGRES diff --git a/src/contractTest/kotlin/edu/obya/blueprint/client/cdc/pact/provider/ClientPactProviderTest.kt b/src/contractTest/kotlin/edu/obya/blueprint/client/cdc/pact/provider/ClientPactProviderTest.kt index 1b412c8..171bfa5 100644 --- a/src/contractTest/kotlin/edu/obya/blueprint/client/cdc/pact/provider/ClientPactProviderTest.kt +++ b/src/contractTest/kotlin/edu/obya/blueprint/client/cdc/pact/provider/ClientPactProviderTest.kt @@ -26,13 +26,13 @@ import reactor.core.publisher.Mono import java.util.* import java.util.function.Supplier -@ActiveProfiles("test") +@ActiveProfiles("test", "cdc") @Provider("clientAPI") @PactFolder("client/cdc/pact") @Import(ClientPactContextConfiguration::class) @AutoConfigureEmbeddedDatabase @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) -class ClientPactProviderTest { +internal class ClientPactProviderTest { @LocalServerPort var port = 0 diff --git a/src/contractTest/resources/application-test.yml b/src/contractTest/resources/application-cdc.yml similarity index 87% rename from src/contractTest/resources/application-test.yml rename to src/contractTest/resources/application-cdc.yml index 42379ff..a3ba51c 100644 --- a/src/contractTest/resources/application-test.yml +++ b/src/contractTest/resources/application-cdc.yml @@ -8,4 +8,4 @@ zonky: test: database: type: POSTGRES - provider: ZONKY + provider: DOCKER