package Ġno . nav . hel se . dom ene . person Ċ Ċ import Ġio . ktor . http . HttpHeaders Ċ import Ġio . ktor . http . HttpMethod Ċ import Ġio . ktor . http . HttpStatusCode Ċ import Ġio . ktor . server . testing . handle Request Ċ import Ġio . ktor . server . testing . with Test Application Ċ import Ġio . mock k . every Ċ import Ġio . mock k . mock k Ċ import Ġno . nav . hel se . Jwt Stub Ċ import Ġno . nav . hel se . assert Json Equals Ċ import Ġno . nav . hel se . common . to Xml G regorian Calendar Ċ import Ġno . nav . hel se . mocked Spark el Ċ import Ġno . nav . hel se . dom ene . A kt Ã¸ r Id Ċ import Ġno . nav . hel se . op ps lag . person . Person Client Ċ import Ġno . nav . t jen este . vir ks om het . person . v 3 . binding . H ent Geo graf isk T ilk ny t ning Person Ik ke Fun net Ċ import Ġno . nav . t jen este . vir ks om het . person . v 3 . binding . H ent Person Person Ik ke Fun net Ċ import Ġno . nav . t jen este . vir ks om het . person . v 3 . binding . Person V 3 Ċ import Ġno . nav . t jen este . vir ks om het . person . v 3 . fe il . Person Ik ke Fun net Ċ import Ġno . nav . t jen este . vir ks om het . person . v 3 . inform as jon .* Ċ import Ġno . nav . t jen este . vir ks om het . person . v 3 . meld inger . H ent Geo graf isk T ilk ny t ning Response Ċ import Ġno . nav . t jen este . vir ks om het . person . v 3 . meld inger . H ent Person Response Ċ import Ġorg . json . JSONObject Ċ import Ġorg . junit . jupiter . api . Assertions . assertEquals Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġjava . time . LocalDate Ċ Ċ class ĠPerson Component Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sk al Ġsv are Ġmed Ġperson `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġakt Ã¸ r Id Ġ= ĠA kt Ã¸ r Id (" 1 2 3 4 5 6 7 8 9 1 0 1 1 ") ĊĊĠĠĠĠĠĠĠ Ġval Ġperson V 3 Ġ= Ġmock k < Person V 3 >() ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperson V 3 . h ent Person ( match Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( it . ak to er Ġas ĠAk to er Id ). ak to er Id Ġ== Ġakt Ã¸ r Id . ak tor ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠH ent Person Response (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperson Ġ= ĠPerson (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġak to er Ġ= ĠAk to er Id (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġak to er Id Ġ= Ġakt Ã¸ r Id . ak tor ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson nav n Ġ= ĠPerson nav n (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġet tern av n Ġ= Ġ" LO LN ES " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmel lom nav n Ġ= Ġ" PI KEN ES " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor nav n Ġ= Ġ" J EN NY " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk jo enn Ġ= ĠK jo enn (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk jo enn Ġ= ĠK jo enn st yper (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" K " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġb ost ed sad resse Ġ= ĠB ost ed sad resse (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstr uktur ert Ad resse Ġ= ĠGate ad resse (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġland kode Ġ= ĠLand k oder (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" NOR " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfo ed sel sd ato Ġ= ĠF o ed sel sd ato (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfo ed sel sd ato Ġ= ĠLocalDate . parse (" 1 9 8 4 - 0 7 - 0 8 "). to Xml G regorian Calendar () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstats b org ers kap Ġ= ĠStats b org ers kap (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġland Ġ= ĠLand k oder (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" NOR " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson status Ġ= ĠPerson status (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson status Ġ= ĠPerson stat user (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" B OS A " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġj wk Stub Ġ= ĠJwt Stub (" test Ġissuer ") ĊĠĠĠĠĠĠĠ Ġval Ġtoken Ġ= Ġj wk Stub . create Token For (" srv ple i ep en ge sok na ") ĊĊĠĠĠĠĠĠĠ Ġwith Test Application ({ mocked Spark el ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjwt Issuer Ġ= Ġ" test Ġissuer ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġj wk Provider Ġ= Ġj wk Stub . stub bed J wk Provider (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson Service Ġ= ĠPerson Service ( Person Client ( person V 3 )) ĊĠĠĠĠĠĠĠ Ġ) }) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhandle Request ( HttpMethod . Get , Ġ"/ api / person /${ akt Ã¸ r Id . ak tor }") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Header ( HttpHeaders . Authorization , Ġ" Bearer Ġ$ token ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( HttpStatusCode . OK , Ġresponse . status ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert Json Equals ( JSONObject ( expected _ person _ response ), ĠJSONObject ( response . content )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sk al Ġsv are Ġmed Ġperson Ġut en Ġb ost ed ad resse `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġakt Ã¸ r Id Ġ= ĠA kt Ã¸ r Id (" 1 2 3 4 5 6 7 8 9 1 0 1 1 ") ĊĊĠĠĠĠĠĠĠ Ġval Ġperson V 3 Ġ= Ġmock k < Person V 3 >() ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperson V 3 . h ent Person ( match Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( it . ak to er Ġas ĠAk to er Id ). ak to er Id Ġ== Ġakt Ã¸ r Id . ak tor ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠH ent Person Response (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperson Ġ= ĠPerson (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġak to er Ġ= ĠAk to er Id (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġak to er Id Ġ= Ġakt Ã¸ r Id . ak tor ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson nav n Ġ= ĠPerson nav n (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġet tern av n Ġ= Ġ" LO LN ES " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmel lom nav n Ġ= Ġ" PI KEN ES " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor nav n Ġ= Ġ" J EN NY " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk jo enn Ġ= ĠK jo enn (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġk jo enn Ġ= ĠK jo enn st yper (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" K " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdisk res jon sk ode Ġ= ĠDisk res jon sk oder (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" U FB " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfo ed sel sd ato Ġ= ĠF o ed sel sd ato (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfo ed sel sd ato Ġ= ĠLocalDate . parse (" 1 9 8 4 - 0 7 - 0 8 "). to Xml G regorian Calendar () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstats b org ers kap Ġ= ĠStats b org ers kap (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġland Ġ= ĠLand k oder (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" S WE " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson status Ġ= ĠPerson status (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson status Ġ= ĠPerson stat user (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġ" UT VA " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġj wk Stub Ġ= ĠJwt Stub (" test Ġissuer ") ĊĠĠĠĠĠĠĠ Ġval Ġtoken Ġ= Ġj wk Stub . create Token For (" srv ple i ep en ge sok na ") ĊĊĠĠĠĠĠĠĠ Ġwith Test Application ({ mocked Spark el ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjwt Issuer Ġ= Ġ" test Ġissuer ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġj wk Provider Ġ= Ġj wk Stub . stub bed J wk Provider (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson Service Ġ= ĠPerson Service ( Person Client ( person V 3 )) ĊĠĠĠĠĠĠĠ Ġ) }) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhandle Request ( HttpMethod . Get , Ġ"/ api / person /${ akt Ã¸ r Id . ak tor }") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Header ( HttpHeaders . Authorization , Ġ" Bearer Ġ$ token ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( HttpStatusCode . OK , Ġresponse . status ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert Json Equals ( JSONObject ( expected _ person _ uten _ fast _ b op el _ response ), ĠJSONObject ( response . content )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sk al Ġsv are Ġmed Ġfe il Ġn Ã¥r Ġperson op ps lag Ġgir Ġfe il `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġakt Ã¸ r Id Ġ= ĠA kt Ã¸ r Id (" 1 2 3 4 5 6 7 8 9 1 0 1 1 ") ĊĊĠĠĠĠĠĠĠ Ġval Ġperson V 3 Ġ= Ġmock k < Person V 3 >() ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperson V 3 . h ent Person ( match Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( it . ak to er Ġas ĠAk to er Id ). ak to er Id Ġ== Ġakt Ã¸ r Id . ak tor ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} Ġthrows ( H ent Person Person Ik ke Fun net (" Person Ġik ke Ġfun net ", ĠPerson Ik ke Fun net ())) ĊĊĠĠĠĠĠĠĠ Ġval Ġj wk Stub Ġ= ĠJwt Stub (" test Ġissuer ") ĊĠĠĠĠĠĠĠ Ġval Ġtoken Ġ= Ġj wk Stub . create Token For (" srv ple i ep en ge sok na ") ĊĊĠĠĠĠĠĠĠ Ġwith Test Application ({ mocked Spark el ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjwt Issuer Ġ= Ġ" test Ġissuer ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġj wk Provider Ġ= Ġj wk Stub . stub bed J wk Provider (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson Service Ġ= ĠPerson Service ( Person Client ( person V 3 )) ĊĠĠĠĠĠĠĠ Ġ) }) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhandle Request ( HttpMethod . Get , Ġ"/ api / person /${ akt Ã¸ r Id . ak tor }") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Header ( HttpHeaders . Authorization , Ġ" Bearer Ġ$ token ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( HttpStatusCode . NotFound , Ġresponse . status ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert Json Equals ( JSONObject ( expected _ not _ found _ response ), ĠJSONObject ( response . content )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sk al Ġsv are Ġmed Ġgeo graf isk Ġtil k ny t ning `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġakt Ã¸ r Id Ġ= ĠA kt Ã¸ r Id (" 1 2 3 4 5 6 7 8 9 1 0 1 1 ") ĊĊĠĠĠĠĠĠĠ Ġval Ġperson V 3 Ġ= Ġmock k < Person V 3 >() ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperson V 3 . h ent Geo graf isk T ilk ny t ning ( match Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( it . ak to er Ġas ĠAk to er Id ). ak to er Id Ġ== Ġakt Ã¸ r Id . ak tor ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠH ent Geo graf isk T ilk ny t ning Response (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġak to er Ġ= ĠAk to er Id (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġak to er Id Ġ= Ġakt Ã¸ r Id . ak tor ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnav n Ġ= ĠPerson nav n (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġet tern av n Ġ= Ġ" BL Y ANT " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmel lom nav n Ġ= Ġ" S ME KK ER " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsam mens att Nav n Ġ= Ġ" BL Y ANT ĠS ME KK ER " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgeo graf isk T ilk ny t ning Ġ= ĠBy del (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgeo graf isk T ilk ny t ning Ġ= Ġ" 0 3 0 1 0 3 " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġj wk Stub Ġ= ĠJwt Stub (" test Ġissuer ") ĊĠĠĠĠĠĠĠ Ġval Ġtoken Ġ= Ġj wk Stub . create Token For (" srv ple i ep en ge sok na ") ĊĊĠĠĠĠĠĠĠ Ġwith Test Application ({ mocked Spark el ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjwt Issuer Ġ= Ġ" test Ġissuer ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġj wk Provider Ġ= Ġj wk Stub . stub bed J wk Provider (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson Service Ġ= ĠPerson Service ( Person Client ( person V 3 )) ĊĠĠĠĠĠĠĠ Ġ) }) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhandle Request ( HttpMethod . Get , Ġ"/ api / person /${ akt Ã¸ r Id . ak tor }/ geo graf isk - til k ny t ning ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Header ( HttpHeaders . Authorization , Ġ" Bearer Ġ$ token ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( HttpStatusCode . OK . value , Ġresponse . status ()?. value ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert Json Equals ( JSONObject ( expected _ geo graf isk _ til k ny t ning _ response ), ĠJSONObject ( response . content )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sk al Ġsv are Ġmed Ġfe il Ġn Ã¥r Ġgeo graf isk Ġtil k ny t ning op ps lag Ġgir Ġfe il `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġakt Ã¸ r Id Ġ= ĠA kt Ã¸ r Id (" 1 2 3 4 5 6 7 8 9 1 0 1 1 ") ĊĊĠĠĠĠĠĠĠ Ġval Ġperson V 3 Ġ= Ġmock k < Person V 3 >() ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperson V 3 . h ent Geo graf isk T ilk ny t ning ( match Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( it . ak to er Ġas ĠAk to er Id ). ak to er Id Ġ== Ġakt Ã¸ r Id . ak tor ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} Ġthrows ( H ent Geo graf isk T ilk ny t ning Person Ik ke Fun net (" Person Ġik ke Ġfun net ", ĠPerson Ik ke Fun net ())) ĊĊĠĠĠĠĠĠĠ Ġval Ġj wk Stub Ġ= ĠJwt Stub (" test Ġissuer ") ĊĠĠĠĠĠĠĠ Ġval Ġtoken Ġ= Ġj wk Stub . create Token For (" srv ple i ep en ge sok na ") ĊĊĠĠĠĠĠĠĠ Ġwith Test Application ({ mocked Spark el ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjwt Issuer Ġ= Ġ" test Ġissuer ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġj wk Provider Ġ= Ġj wk Stub . stub bed J wk Provider (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġperson Service Ġ= ĠPerson Service ( Person Client ( person V 3 )) ĊĠĠĠĠĠĠĠ Ġ) }) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhandle Request ( HttpMethod . Get , Ġ"/ api / person /${ akt Ã¸ r Id . ak tor }/ geo graf isk - til k ny t ning ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Header ( HttpHeaders . Authorization , Ġ" Bearer Ġ$ token ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( HttpStatusCode . NotFound , Ġresponse . status ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert Json Equals ( JSONObject ( expected _ not _ found _ response ), ĠJSONObject ( response . content )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġval Ġexpected _ person _ response Ġ= Ġ""" Ċ { ĊĠĠĠ Ġ" akt Ã¸ r Id ": Ġ" 1 2 3 4 5 6 7 8 9 1 0 1 1 ", ĊĠĠĠ Ġ" f dat o ": Ġ" 1 9 8 4 - 0 7 - 0 8 ", ĊĠĠĠ Ġ" et tern av n ": Ġ" LO LN ES ", ĊĠĠĠ Ġ" mel lom nav n ": Ġ" PI KEN ES ", ĊĠĠĠ Ġ" for nav n ": Ġ" J EN NY ", ĊĠĠĠ Ġ" kj Ã¸ nn ": Ġ" KV IN NE ", ĊĠĠĠ Ġ" b ost ed sl and ": Ġ" NOR ", ĊĠĠĠ Ġ" stats b org ers kap ": Ġ" NOR ", ĊĠĠĠ Ġ" status ": Ġ" B OS A " Ċ } Ċ """. trim Indent () Ċ Ċ private Ġval Ġexpected _ person _ uten _ fast _ b op el _ response Ġ= Ġ""" Ċ { ĊĠĠĠ Ġ" akt Ã¸ r Id ": Ġ" 1 2 3 4 5 6 7 8 9 1 0 1 1 ", ĊĠĠĠ Ġ" f dat o ": Ġ" 1 9 8 4 - 0 7 - 0 8 ", ĊĠĠĠ Ġ" et tern av n ": Ġ" LO LN ES ", ĊĠĠĠ Ġ" mel lom nav n ": Ġ" PI KEN ES ", ĊĠĠĠ Ġ" for nav n ": Ġ" J EN NY ", ĊĠĠĠ Ġ" kj Ã¸ nn ": Ġ" KV IN NE ", ĊĠĠĠ Ġ" disk res jon sk ode ": Ġ" U FB ", ĊĠĠĠ Ġ" stats b org ers kap ": Ġ" S WE ", ĊĠĠĠ Ġ" status ": Ġ" UT VA " Ċ } Ċ """. trim Indent () Ċ Ċ private Ġval Ġexpected _ geo graf isk _ til k ny t ning _ response Ġ= Ġ""" Ċ { ĊĠĠĠ Ġ" kode ": Ġ" 0 3 0 1 0 3 ", ĊĠĠĠ Ġ" type ": Ġ" BY DEL " Ċ } Ċ """. trim Indent () Ċ Ċ private Ġval Ġexpected _ not _ found _ response Ġ= Ġ""" Ċ { ĊĠĠĠ Ġ" fe il meld ing ": Ġ" Resource Ġnot Ġfound " Ċ } Ċ """. trim Indent () Ċ