/
NikolayIvkin
/
tutorials1
Обзор
Документация
Войти
/
NikolayIvkin
/
tutorials1
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
spring-boot-modules/spring-boot-testing-3/src/test/java/com/baeldung/embeddedpostgresql/EmbeddedPostgresConfiguration.java
42 строки
1 KB
ICKostiantyn.Ivanov
BAEL-7984 - Embedded PostgreSQL for Spring Boot Tests
24 май 2024, 17:12
24 май 2024, 17:12
f049e72
Код
Авторство
О чём код?
package com.baeldung.embeddedpostgresql; import java.io.IOException; import javax.sql.DataSource; import org.junit.jupiter.api.extension.AfterAllCallback; import org.junit.jupiter.api.extension.ExtensionContext; import org.springframework.boot.autoconfigure.domain.EntityScan; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.jpa.repository.config.EnableJpaRepositories; import org.testcontainers.utility.DockerImageName; import com.opentable.db.postgres.embedded.EmbeddedPostgres; @Configuration @EnableJpaRepositories(basePackageClasses = PersonRepository.class) @EntityScan(basePackageClasses = Person.class) public class EmbeddedPostgresConfiguration { private static EmbeddedPostgres embeddedPostgres; @Bean public DataSource dataSource() throws IOException { embeddedPostgres = EmbeddedPostgres.builder() .setImage(DockerImageName.parse("postgres:14.1")) .start(); return embeddedPostgres.getPostgresDatabase(); } public static class EmbeddedPostgresExtension implements AfterAllCallback { @Override public void afterAll(ExtensionContext context) throws Exception { if (embeddedPostgres == null) { return; } embeddedPostgres.close(); } } }