package Ġno . nav . hel se . sp ur v Ċ Ċ import Ġcom . opent able . db . postgres . embedded . Embedded Postgres Ċ import Ġcom . zaxxer . hikari . HikariConfig Ċ import Ġcom . zaxxer . hikari . Hikari DataSource Ċ import Ġorg . fly way db . core . Fly way Ċ import Ġorg . junit . jupiter . api . After Each Ċ import Ġorg . junit . jupiter . api . Assertions . assertTrue Ċ import Ġorg . junit . jupiter . api . BeforeEach Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġjava . sql . Connection Ċ Ċ internal Ġclass ĠMigration Test Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġembedded Postgres : ĠEmbedded Postgres ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġpostgres Connection : ĠConnection ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar ĠhikariConfig : ĠH ikariConfig ĊĊĠĠĠ Ġ@ BeforeEach ĊĠĠĠ Ġfun Ġ` start Ġpostgres `() Ġ{ ĊĠĠĠĠĠĠĠ Ġembedded Postgres Ġ= ĠEmbedded Postgres . builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. start () ĊĊĠĠĠĠĠĠĠ Ġpostgres Connection Ġ= Ġembedded Postgres . postgres Database . connection ĊĊĠĠĠĠĠĠĠ ĠhikariConfig Ġ= Ġcreate HikariConfig ( embedded Postgres . get Jdbc Url (" postgres ", Ġ" postgres ")) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġrun Migration () Ġ= ĊĠĠĠĠĠĠĠ ĠFly way . configure () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. dataSource ( Hikari DataSource ( h ikariConfig )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. load () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. migrate () ĊĊĠĠĠ Ġprivate Ġfun Ġcreate HikariConfig ( jdbc Url : ĠString ) Ġ= ĊĠĠĠĠĠĠĠ ĠH ikariConfig (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . jdbc Url Ġ= Ġjdbc Url ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmaximum PoolSize Ġ= Ġ 3 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġminimum Idle Ġ= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġidle Timeout Ġ= Ġ 1 0 0 0 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconnection Timeout Ġ= Ġ 1 0 0 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmax Lifetime Ġ= Ġ 3 0 0 0 1 ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ After Each ĊĠĠĠ Ġfun Ġ` stop Ġpostgres `() Ġ{ ĊĠĠĠĠĠĠĠ Ġpostgres Connection . close () ĊĠĠĠĠĠĠĠ Ġembedded Postgres . close () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` migr ering er Ġskal Ġk j Ã¸ re `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmigrations Ġ= Ġrun Migration () ĊĠĠĠĠĠĠĠ ĠassertTrue ( migrations Ġ> Ġ 0 , Ġ" In gen Ġmigr ering er Ġble Ġk j Ã¸ rt ") ĊĠĠĠ Ġ} Ċ } Ċ