package Ġno . nav . f amil ie . ef . sak . service Ċ Ċ import Ġio . mock k . every Ċ import Ġio . mock k . mock k Ċ import Ġio . mock k . slot Ċ import Ġio . mock k . verify Ċ import Ġno . nav . f amil ie . ef . sak . Opp sl ag Spring Runner Test Ċ import Ġno . nav . f amil ie . ef . sak . integration . F amil ie Integr as jon er Client Ċ import Ġno . nav . f amil ie . ef . sak . integration . Journal post Client Ċ import Ġno . nav . f amil ie . ef . sak . integration . dto . f amil ie . Ar be ids for del ings en het Ċ import Ġno . nav . f amil ie . ef . sak . no . nav . f amil ie . ef . sak . repository . be handling Ċ import Ġno . nav . f amil ie . ef . sak . no . nav . f amil ie . ef . sak . repository . f ags ak Ċ import Ġno . nav . f amil ie . ef . sak . repository . Be handling Repository Ċ import Ġno . nav . f amil ie . ef . sak . repository . F ags ak Repository Ċ import Ġno . nav . f amil ie . ef . sak . repository . V ed t aks bre v Repository Ċ import Ġno . nav . f amil ie . ef . sak . repository . domain . F ags ak Person Ċ import Ġno . nav . f amil ie . ef . sak . repository . domain . Fil Ċ import Ġno . nav . f amil ie . ef . sak . repository . domain . V ed t aks bre v Ċ import Ġno . nav . f amil ie . ef . sak . repository . findById OrThrow Ċ import Ġno . nav . f amil ie . ef . sak . ved t aks bre v . B rev Client Ċ import Ġno . nav . f amil ie . kon tr ak ter . fel les . dok ark iv . Ar k iver D okument Request Ċ import Ġno . nav . f amil ie . kon tr ak ter . fel les . dok ark iv . Ar k iver D okument Response Ċ import Ġorg . assertj . core . api . Assertions . assertThat Ċ import Ġorg . junit . jupiter . api . BeforeEach Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġorg . junit . jupiter . api . assert Throws Ċ import Ġorg . springframework . beans . factory . annotation . Autowired Ċ import Ġjava . lang . IllegalStateException Ċ import Ġjava . util .* Ċ Ċ internal Ġclass ĠV ed t aks bre v Service Test Ġ: ĠO pp sl ag Spring Runner Test () Ġ{ ĊĊĊĠĠĠ Ġ@ Autowired Ġlateinit Ġvar Ġved t aks bre v Service : ĠV ed t aks bre v Service ĊĠĠĠ Ġ@ Autowired Ġprivate Ġlateinit Ġvar Ġf ags ak Repository : ĠF ags ak Repository ĊĠĠĠ Ġ@ Autowired Ġprivate Ġlateinit Ġvar Ġbe handling Repository : ĠBe handling Repository ĊĠĠĠ Ġ@ Autowired Ġprivate Ġlateinit Ġvar Ġved t aks bre v Repository : ĠV ed t aks bre v Repository ĊĊĠĠĠ Ġval Ġb rev Client Mock Ġ= Ġmock k < B rev Client >() ĊĠĠĠ Ġval Ġbe handling Service Mock Ġ= Ġmock k < Be handling Service >() ĊĠĠĠ Ġval Ġf ags ak Service Mock Ġ= Ġmock k < F ags ak Service >() ĊĠĠĠ Ġval Ġperson Service Mock Ġ= Ġmock k < Person Service >() ĊĠĠĠ Ġval Ġjournal post Client Mock Ġ= Ġmock k < Journal post Client >() ĊĠĠĠ Ġval Ġar be ids for de ling Service Mock Ġ= Ġmock k < Ar be ids for de ling Service >() ĊĠĠĠ Ġval Ġved t aks bre v Repository Mock Ġ= Ġmock k < V ed t aks bre v Repository >() ĊĠĠĠ Ġval Ġfam il ie Integr as jon er Client Mock Ġ= Ġmock k < F amil ie Integr as jon er Client >() ĊĊĠĠĠ Ġprivate Ġval Ġf ags ak Ġ= Ġf ags ak ( set Of ( F ags ak Person (" "))) ĊĠĠĠ Ġprivate Ġval Ġbe handling Ġ= Ġbe handling ( f ags ak ) ĊĊĠĠĠ Ġinternal Ġfun Ġlag Service Med M ocker () Ġ= ĠV ed t aks bre v Service ( bre v Client Mock , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġved t aks bre v Repository Mock , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe handling Service Mock , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġf ags ak Service Mock , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson Service Mock , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjournal post Client Mock , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġar be ids for de ling Service Mock , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfam il ie Integr as jon er Client Mock ) ĊĊĠĠĠ Ġ@ BeforeEach ĊĠĠĠ Ġinternal Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ Ġf ags ak Repository . insert ( f ags ak ) ĊĠĠĠĠĠĠĠ Ġbe handling Repository . insert ( be handling ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sk al Ġik ke Ġkun ne Ġl age Ġen del ig Ġb rev Ġh vis Ġut k ast Ġik ke Ġfin nes `() Ġ{ ĊĠĠĠĠĠĠĠ ĠassertThrows < IllegalStateException > Ġ{ Ġved t aks bre v Service . lag re En del ig B rev ( be handling Id Ġ= Ġbe handling . id ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sk al Ġl age Ġen del ig Ġb rev Ġbas ert ĠpÃ¥ Ġut k ast `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut k ast Ġ= Ġved t aks bre v Service . lag re B rev U tk ast ( be handling Id Ġ= Ġbe handling . id ) ĊĠĠĠĠĠĠĠ Ġval Ġen del ig Ġ= Ġved t aks bre v Service . lag re En del ig B rev ( be handling Id Ġ= Ġbe handling . id ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ut k ast ). using Recursive Comparison (). ign oring Fields (" bre v Request ", Ġ" pdf "). isEqualTo ( en del ig ) ĊĠĠĠĠĠĠĠ ĠassertThat ( ut k ast . ut k ast B rev Request ). using Recursive Comparison () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. ign oring Fields (" sign atur B es l utter ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. isEqualTo ( en del ig . bre v Request ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` ut k ast Ġskal Ġlag res Ġi Ġdatab as en `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut k ast Ġ= Ġved t aks bre v Service . lag re B rev U tk ast ( be handling Id Ġ= Ġbe handling . id ) ĊĠĠĠĠĠĠĠ Ġval Ġfor vent et Request Ġ= Ġved t aks bre v Service . lag B rev Request ( be handling Id Ġ= Ġbe handling . id ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ut k ast ). isEqualTo ( ved t aks bre v Repository . findById OrThrow ( be handling . id )) ĊĠĠĠĠĠĠĠ ĠassertThat ( for vent et Request ). isEqualTo ( ved t aks bre v Repository . findById OrThrow ( be handling . id ). ut k ast B rev Request ) ĊĠĠĠĠĠĠĠ ĠassertThat ( ved t aks bre v Repository . findById OrThrow ( be handling . id ). ut k ast Pdf ). isNotNull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` en del ig Ġb rev Ġskal Ġlag res Ġi Ġdatab as en `() Ġ{ ĊĠĠĠĠĠĠĠ Ġved t aks bre v Service . lag re B rev U tk ast ( be handling Id Ġ= Ġbe handling . id ) ĊĠĠĠĠĠĠĠ Ġval Ġen del ig Ġ= Ġved t aks bre v Service . lag re En del ig B rev ( be handling Id Ġ= Ġbe handling . id ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( en del ig ). isEqualTo ( ved t aks bre v Repository . findById OrThrow ( be handling . id )) ĊĠĠĠĠĠĠĠ ĠassertThat ( ved t aks bre v Repository . findById OrThrow ( be handling . id ). pdf ). isNotNull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` en del ig Ġb rev Ġskal Ġik ke Ġlag res Ġved Ġgener ering Ġav Ġut k ast `() Ġ{ ĊĠĠĠĠĠĠĠ Ġved t aks bre v Service . lag re B rev U tk ast ( be handling Id Ġ= Ġbe handling . id ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ved t aks bre v Repository . findById OrThrow ( be handling . id ). bre v Request ). isNull () ĊĠĠĠĠĠĠĠ ĠassertThat ( ved t aks bre v Repository . findById OrThrow ( be handling . id ). pdf ). isNull () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġinternal Ġfun Ġ` sk al Ġjo urn alf Ã¸ re Ġved t aks bre v `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġb rev Client Ġ= Ġmock k < B rev Client >() ĊĠĠĠĠĠĠĠ Ġval Ġbe handling Service Ġ= Ġmock k < Be handling Service >() ĊĠĠĠĠĠĠĠ Ġval Ġf ags ak Service Ġ= Ġmock k < F ags ak Service >() ĊĠĠĠĠĠĠĠ Ġval Ġperson Service Ġ= Ġmock k < Person Service >() ĊĠĠĠĠĠĠĠ Ġval Ġjournal post Client Ġ= Ġmock k < Journal post Client >() ĊĠĠĠĠĠĠĠ Ġval Ġar be ids for de ling Service Ġ= Ġmock k < Ar be ids for de ling Service >() ĊĠĠĠĠĠĠĠ Ġval Ġved t aks bre v Repository Ġ= Ġmock k < V ed t aks bre v Repository >() ĊĠĠĠĠĠĠĠ Ġval Ġfam il ie Integr as jon er Client Ġ= Ġmock k < F amil ie Integr as jon er Client >() ĊĊĠĠĠĠĠĠĠ Ġval Ġved t aks bre v Ġ= ĠV ed t aks bre v ( be handling . id , Ġmock k (), Ġnull , ĠFil (" 1 2 3 ". toByteArray ()), ĠFil (" 1 2 3 ". toByteArray ())) ĊĊĠĠĠĠĠĠĠ Ġval Ġved t aks bre v Service Ġ= ĠV ed t aks bre v Service ( bre v Client , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġved t aks bre v Repository , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbe handling Service , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġf ags ak Service , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson Service , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjournal post Client , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġar be ids for de ling Service , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfam il ie Integr as jon er Client ) ĊĊĠĠĠĠĠĠĠ Ġval Ġ ark iver D okument Request Slot Ġ= Ġslot < Ar k iver D okument Request >() ĊĊĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġar be ids for de ling Service . h ent Nav En het ( any ()) Ġ} Ġreturns ĠAr be ids for del ings en het (" 4 3 2 1 ", Ġ" en het Nav n ") ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġf ags ak Service . h ent F aks ak For Be handling ( be handling . id ) Ġ} Ġreturns Ġf ags ak ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġved t aks bre v Repository . findById ( be handling . id ) Ġ} Ġreturns ĠOptional . of ( ved t aks bre v ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjournal post Client . ark iver D okument ( capture ( ark iver D okument Request Slot )) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠAr k iver D okument Response (" 1 2 3 4 ", Ġtrue ) ĊĊĠĠĠĠĠĠĠ Ġved t aks bre v Service . jo urn alf Ã¸ r V ed t aks bre v ( be handling . id ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ark iver D okument Request Slot . captured . fn r ). isEqualTo ( f ags ak . h ent A ktiv Ident ()) ĊĠĠĠĠĠĠĠ ĠassertThat ( ark iver D okument Request Slot . captured . f ags ak Id ). isEqualTo ( f ags ak . ek st ern Id . id . toString ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġinternal Ġfun Ġ` dist ribu er B rev Ġskal Ġdistribu ere Ġb rev `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġjournal post Id Ġ= Ġ" 5 5 5 5 " ĊĠĠĠĠĠĠĠ Ġval Ġved t aks bre v Service Ġ= Ġlag Service Med M ocker () ĊĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġfam il ie Integr as jon er Client Mock . dist ribu er B rev ( any ()) Ġ} Ġreturns Ġ" 9 8 7 6 " ĊĊĊĠĠĠĠĠĠĠ Ġved t aks bre v Service . dist ribu er V ed t aks bre v ( be handling . id , Ġjournal post Id ) ĊĊĠĠĠĠĠĠĠ Ġverify Ġ{ Ġfam il ie Integr as jon er Client Mock . dist ribu er B rev ( journal post Id ) Ġ} ĊĊĠĠĠ Ġ} Ċ Ċ }