package Ġpl . to uk . kr ush . multip ackage Ċ Ċ import Ġorg . assertj . core . api . Assertions . assertThat Ċ import Ġorg . jetbrains . ex posed . sql . Schema Utils Ċ import Ġorg . jetbrains . ex posed . sql . insert Ċ import Ġorg . jetbrains . ex posed . sql . select Ċ import Ġorg . jetbrains . ex posed . sql . transactions . transaction Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġpl . to uk . kr ush . base . Base Database Test Ċ import Ġpl . to uk . kr ush . multip ackage . b . Test B Ċ import Ġpl . to uk . kr ush . multip ackage . b . Test B Table Ċ import Ġpl . to uk . kr ush . multip ackage . b . insert Ċ Ċ class ĠMulti Package Test Ġ: ĠBase Database Test () Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġshould Handle Multi Package Classes () Ġ{ ĊĠĠĠĠĠĠĠ Ġtransaction Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSchema Utils . create ( Test AT able , ĠTest B Table ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġa Ġ= ĠTest A (). let Ġ{ Ġa Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠTest AT able . insert Ġ{} [ Test AT able . id ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġa . copy ( id Ġ= Ġid ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġb Ġ= ĠTest B Table . insert ( test B Ġ= ĠTest B ( text Ġ= Ġ" test ĠB "), Ġtest A Ġ= Ġa ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġa List Ġ= Ġ( Test B Table Ġleft Join ĠTest AT able ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. select Ġ{ ĠTest B Table . text Ġlike Ġ" tes %" Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. to Test A List () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġthen ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertThat ( a List ). contains Exactly ( a . copy ( b Ġ= ĠlistOf ( b ))) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ