package Ġio . kom mon s . design patterns . adapter Ċ Ċ import Ġio . kom mon s . logging . K Logging Ċ import Ġio . mock k . spy k Ċ import Ġio . mock k . verify Ċ import Ġorg . junit . jupiter . api . BeforeEach Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ class ĠAdapter Pattern Test Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject : ĠK Logging () Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠF ISH ING _ BE AN Ġ= Ġ" fish er " ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠRO WING _ BE AN Ġ= Ġ" capt ain " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġbe ans Ġ= Ġmutable Map Of < String , ĠAny >() ĊĊĊĠĠĠ Ġ@ BeforeEach ĊĠĠĠ Ġfun Ġsetup () Ġ{ ĊĠĠĠĠĠĠĠ Ġbe ans . clear () ĊĊĠĠĠĠĠĠĠ Ġval Ġfish ing Bo at Adapter Ġ= Ġspy k < Fish ing Bo at Adapter >() ĊĠĠĠĠĠĠĠ Ġbe ans . put ( F ISH ING _ BE AN , Ġfish ing Bo at Adapter ) ĊĊĠĠĠĠĠĠĠ Ġval Ġcapt ain Ġ= ĠCapt ain ( beans [ F ISH ING _ BE AN ] Ġas ĠF ishing Bo at Adapter ) ĊĠĠĠĠĠĠĠ Ġbe ans [ ROW ING _ BE AN ] Ġ= Ġcapt ain ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` test Ġadapter `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcapt ain Ġ= Ġbe ans [ ROW ING _ BE AN ] Ġas ĠCapt ain ĊĊĠĠĠĠĠĠĠ Ġcapt ain . row () ĊĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġbe ans [ F ISH ING _ BE AN ] Ġas ĠRow ing Bo at ĊĊĠĠĠĠĠĠĠ Ġverify ( exact ly Ġ= Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter . row () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }