package Ġmob i . water dog . rest . template . tests . containers Ċ Ċ import Ġio . ktor . config . Application Config Ċ import Ġio . ktor . config . Map Application Config Ċ import Ġorg . test containers . containers . PostgreSQL Container Ċ Ċ class ĠK PostgreSQL Container ( image : ĠString ) Ġ: ĠPostgreSQL Container < K PostgreSQL Container >( image ) Ġ{ ĊĊĠĠĠ Ġfun Ġconfig Info (): ĠApplication Config Ġ= ĠMap Application Config ( ĊĠĠĠĠĠĠĠ ĠPair (" datasource . driver ", Ġdriver ClassName ), ĊĠĠĠĠĠĠĠ ĠPair (" datasource . jdbc Url ", Ġjdbc Url ), ĊĠĠĠĠĠĠĠ ĠPair (" datasource . username ", Ġusername ), ĊĠĠĠĠĠĠĠ ĠPair (" datasource . password ", Ġpassword ), ĊĠĠĠĠĠĠĠ ĠPair (" datasource . pool . default Isolation ", Ġ" TRANSACTION _ REPEAT ABLE _ READ "), ĊĠĠĠĠĠĠĠ ĠPair (" datasource . pool . max PoolSize ", Ġ" 5 ") ĊĠĠĠ Ġ) Ċ } Ċ Ċ object ĠP g SQL Container Factory Ġ{ ĊĊĠĠĠ Ġfun Ġnew Instance ( ĊĠĠĠĠĠĠĠ Ġdatabase Name : ĠString Ġ= Ġ" kt ort emplate ", ĊĠĠĠĠĠĠĠ Ġusername : ĠString Ġ= Ġ" ktor ", ĊĠĠĠĠĠĠĠ Ġpassword : ĠString Ġ= Ġ" template ", ĊĠĠĠĠĠĠĠ Ġre Use : ĠBoolean Ġ= Ġtrue , ĊĠĠĠĠĠĠĠ Ġimage : ĠString Ġ= Ġ" postgres ", ĊĠĠĠĠĠĠĠ Ġversion : ĠString Ġ= Ġ" 1 2 " ĊĠĠĠ Ġ): ĠK PostgreSQL Container Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠK PostgreSQL Container ("$ image :$ version ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Re use ( re Use ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Database Name ( database Name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Username ( username ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Password ( password ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Command (" postgres Ġ- c Ġmax _ connections = 1 0 0 0 ") ĊĠĠĠ Ġ} Ċ } Ċ