From 1dba5f72a0c8c3c7488b6ca5c2e43c95c4d52b33 Mon Sep 17 00:00:00 2001 From: Alexander Buntakov Date: Mon, 7 Jun 2021 18:37:38 +0300 Subject: [PATCH] review fixes --- .../test/jpa/repository/RepositoryTest.kt | 2 +- ...nfig.kt => RepositoryTestConfiguration.kt} | 19 +++++++++++++------ .../src/main/resources/test-slow.yml | 6 ++++-- 3 files changed, 18 insertions(+), 9 deletions(-) rename common-spring-test-jpa/src/main/kotlin/ru/touchin/common/spring/test/jpa/repository/{RepositoryTestConfig.kt => RepositoryTestConfiguration.kt} (68%) diff --git a/common-spring-test-jpa/src/main/kotlin/ru/touchin/common/spring/test/jpa/repository/RepositoryTest.kt b/common-spring-test-jpa/src/main/kotlin/ru/touchin/common/spring/test/jpa/repository/RepositoryTest.kt index aa346fd..fcbf1c7 100644 --- a/common-spring-test-jpa/src/main/kotlin/ru/touchin/common/spring/test/jpa/repository/RepositoryTest.kt +++ b/common-spring-test-jpa/src/main/kotlin/ru/touchin/common/spring/test/jpa/repository/RepositoryTest.kt @@ -9,5 +9,5 @@ import ru.touchin.common.spring.test.annotations.SlowTest @ActiveProfiles("test", "test-slow") @SlowTest @DataJpaTest -@Import(RepositoryTestConfig::class) +@Import(RepositoryTestConfiguration::class) annotation class RepositoryTest diff --git a/common-spring-test-jpa/src/main/kotlin/ru/touchin/common/spring/test/jpa/repository/RepositoryTestConfig.kt b/common-spring-test-jpa/src/main/kotlin/ru/touchin/common/spring/test/jpa/repository/RepositoryTestConfiguration.kt similarity index 68% rename from common-spring-test-jpa/src/main/kotlin/ru/touchin/common/spring/test/jpa/repository/RepositoryTestConfig.kt rename to common-spring-test-jpa/src/main/kotlin/ru/touchin/common/spring/test/jpa/repository/RepositoryTestConfiguration.kt index 414bda1..9d3ad79 100644 --- a/common-spring-test-jpa/src/main/kotlin/ru/touchin/common/spring/test/jpa/repository/RepositoryTestConfig.kt +++ b/common-spring-test-jpa/src/main/kotlin/ru/touchin/common/spring/test/jpa/repository/RepositoryTestConfiguration.kt @@ -3,6 +3,7 @@ package ru.touchin.common.spring.test.jpa.repository import com.zaxxer.hikari.HikariConfig import com.zaxxer.hikari.HikariDataSource +import org.springframework.beans.factory.annotation.Value import org.springframework.boot.test.context.TestConfiguration import org.springframework.context.annotation.Bean import org.springframework.context.annotation.ComponentScan @@ -15,12 +16,14 @@ import javax.sql.DataSource @TestConfiguration @EnableJpaAuditingExtra @ComponentScan -class RepositoryTestConfig { +class RepositoryTestConfiguration { // запуск и остановка контейнера по lifecycle-событиями компонента (1) @Bean(initMethod = "start", destroyMethod = "stop") - fun jdbcDatabaseContainer(): JdbcDatabaseContainer<*> { - return PostgreSQLContainer("postgres:12").apply { + fun jdbcDatabaseContainer( + @Value("\${tests.slow.db.container}") containerName: String, + ): JdbcDatabaseContainer<*> { + return PostgreSQLContainer(containerName).apply { waitingFor(Wait.forListeningPort()) } } @@ -28,9 +31,13 @@ class RepositoryTestConfig { @Bean fun dataSource(jdbcDatabaseContainer: JdbcDatabaseContainer<*>): DataSource { val hikariConfig = HikariConfig() - hikariConfig.jdbcUrl = jdbcDatabaseContainer.jdbcUrl - hikariConfig.username = jdbcDatabaseContainer.username - hikariConfig.password = jdbcDatabaseContainer.password + .apply { + jdbcUrl = jdbcDatabaseContainer.jdbcUrl + username = jdbcDatabaseContainer.username + password = jdbcDatabaseContainer.password + } + return HikariDataSource(hikariConfig) } + } diff --git a/common-spring-test-jpa/src/main/resources/test-slow.yml b/common-spring-test-jpa/src/main/resources/test-slow.yml index 25f6110..7a697af 100644 --- a/common-spring-test-jpa/src/main/resources/test-slow.yml +++ b/common-spring-test-jpa/src/main/resources/test-slow.yml @@ -12,5 +12,7 @@ spring: test: database: replace: none - - +tests: + slow: + db: + container: "postgres:12"