diff --git a/backend/pom.xml b/backend/pom.xml index 5e07ec0..0286f64 100644 --- a/backend/pom.xml +++ b/backend/pom.xml @@ -7,7 +7,7 @@ org.springframework.boot spring-boot-starter-parent - 3.3.5 + 3.5.16 @@ -64,9 +64,10 @@ postgresql runtime + - com.h2database - h2 + org.testcontainers + postgresql test diff --git a/backend/src/test/resources/application.yml b/backend/src/test/resources/application.yml index cc0c75d..0998a6b 100644 --- a/backend/src/test/resources/application.yml +++ b/backend/src/test/resources/application.yml @@ -1,12 +1,15 @@ spring: datasource: - url: jdbc:h2:mem:polskalokalnie;MODE=PostgreSQL;DATABASE_TO_LOWER=TRUE - username: sa - password: - driver-class-name: org.h2.Driver + # Testcontainers: przy pierwszym polaczeniu startuje tymczasowy PostgreSQL 16 (ta sama wersja co + # produkcja w docker-compose), wspolny dla wszystkich testow i usuwany po ich zakonczeniu. + # Wymaga uruchomionego Dockera przy "mvn test". + url: jdbc:tc:postgresql:16-alpine:///polskalokalnie + driver-class-name: org.testcontainers.jdbc.ContainerDatabaseDriver jpa: hibernate: - ddl-auto: create-drop + # Jak na produkcji. create-drop przy kazdym nowym kontekscie Springa kasowal tabele, z ktorych + # korzystal juz dzialajacy kontekst; baza i tak jest swieza przy kazdym uruchomieniu testow. + ddl-auto: update app: jwt: