package Ġcom . github . zel dig as . text 2 con fl . cli . upload Ċ Ċ import Ġassert k . all Ċ import Ġassert k . assertThat Ċ import Ġassert k . assertions . isEmpty Ċ import Ġassert k . assertions . isEqualTo Ċ import Ġassert k . assertions . prop Ċ import Ġcom . github . zel dig as . conf client . Con fluence Client Ċ import Ġcom . github . zel dig as . conf client . Page Attachment Input Ċ import Ġcom . github . zel dig as . conf client . Page Content Input Ċ import Ġcom . github . zel dig as . conf client . Page Update Options Ċ import Ġcom . github . zel dig as . conf client . model . Attachment Ċ import Ġcom . github . zel dig as . conf client . model . Con fluence Page Ċ import Ġcom . github . zel dig as . conf client . model . Page Attachments Ċ import Ġio . mock k . co Every Ċ import Ġio . mock k . co Verify Ċ import Ġio . mock k . impl . annotations . Mock K Ċ import Ġio . mock k . junit 5 . Mock K Extension Ċ import Ġio . mock k . mock k Ċ import Ġkotlinx . coroutines . run Blocking Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġorg . junit . jupiter . api . extension . Extend With Ċ import Ġkotlin . io . path . Path Ċ Ċ @ Extend With ( Mock K Extension :: class ) Ċ internal Ġclass ĠD ry Run Client Test ( ĊĠĠĠ Ġ@ Mock K Ġval Ġcon fluence Client : ĠCon fluence Client Ċ ) Ġ{ ĊĠĠĠ Ġval Ġdry Run Client Ġ= ĠD ry Run Client ( con fluence Client ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġinternal Ġfun Ġ` Page Ġcreate Ġis Ġmocked `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġrun Blocking Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdry Run Client . create Page ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPage Content Input (" abc ", Ġ" A ĠTitle ", Ġ" some Ġcontent ", Ġ" ABC "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPage Update Options ( true , Ġ" some Ġmessage ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġco Verify ( exact ly Ġ= Ġ 0 ) Ġ{ Ġcon fluence Client . create Page ( any (), Ġany ()) Ġ} ĊĠĠĠĠĠĠĠ ĠassertThat ( result ). all Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprop ( Con fluence Page :: id ). isEqualTo ("( known Ġafter Ġapply )") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprop ( Con fluence Page :: title ). isEqualTo (" A ĠTitle ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġinternal Ġfun Ġ` Page Ġupdate Ġis Ġmocked `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġrun Blocking Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdry Run Client . update Page ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" 1 2 3 4 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPage Content Input (" abc ", Ġ" A ĠTitle ", Ġ" some Ġcontent ", Ġ" ABC "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPage Update Options ( true , Ġ" some Ġmessage ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġco Verify ( exact ly Ġ= Ġ 0 ) Ġ{ Ġcon fluence Client . update Page ( any (), Ġany (), Ġany ()) Ġ} ĊĠĠĠĠĠĠĠ ĠassertThat ( result ). all Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprop ( Con fluence Page :: id ). isEqualTo (" 1 2 3 4 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprop ( Con fluence Page :: title ). isEqualTo (" A ĠTitle ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġinternal Ġfun Ġ` Page Ġdelete Ġis Ġmocked `() Ġ{ ĊĠĠĠĠĠĠĠ Ġrun Blocking Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdry Run Client . delete Page (" 1 2 3 4 ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġco Verify ( exact ly Ġ= Ġ 0 ) Ġ{ Ġcon fluence Client . delete Page ( any ()) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġinternal Ġfun Ġ` Lookup Ġof Ġchild Ġpages Ġis Ġmocked Ġfor Ġnew Ġpages `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexpected Child Pages Ġ= ĠlistOf < Con fluence Page >( mock k ()) ĊĠĠĠĠĠĠĠ Ġco Every Ġ{ Ġcon fluence Client . find Child Pages (" 1 2 3 ", Ġany ()) Ġ} Ġreturns Ġexpected Child Pages ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Of Existing Ġ= Ġrun Blocking Ġ{ Ġdry Run Client . find Child Pages (" 1 2 3 ", ĠlistOf (" exp 1 ")) Ġ} ĊĊĠĠĠĠĠĠĠ Ġco Verify ( exact ly Ġ= Ġ 1 ) Ġ{ con fluence Client . find Child Pages (" 1 2 3 ", ĠlistOf (" exp 1 ")) } ĊĠĠĠĠĠĠĠ ĠassertThat ( result Of Existing ). isEqualTo ( expected Child Pages ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Of New Ġ= Ġrun Blocking Ġ{ Ġdry Run Client . find Child Pages ("( known Ġafter Ġapply )", ĠlistOf (" exp 2 ")) Ġ} ĊĠĠĠĠĠĠĠ ĠassertThat ( result Of New ). isEmpty () ĊĠĠĠĠĠĠĠ Ġco Verify ( exact ly Ġ= Ġ 0 ) Ġ{ con fluence Client . find Child Pages ("( known Ġafter Ġapply )", ĠlistOf (" exp 2 ")) } ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġinternal Ġfun Ġ` Page Ġlabels Ġoperations Ġare Ġmocked `() Ġ{ ĊĠĠĠĠĠĠĠ Ġrun Blocking Ġ{ Ġdry Run Client . add Labels (" 1 2 3 ", ĠlistOf (" one ", Ġ" two ")) Ġ} ĊĠĠĠĠĠĠĠ Ġco Verify ( exact ly Ġ= Ġ 0 ) Ġ{ Ġcon fluence Client . add Labels ( any (), Ġany ()) Ġ} ĊĊĠĠĠĠĠĠĠ Ġrun Blocking Ġ{ Ġdry Run Client . delete Label (" 1 2 3 ", Ġ" label ") Ġ} ĊĠĠĠĠĠĠĠ Ġco Verify ( exact ly Ġ= Ġ 0 ) Ġ{ Ġcon fluence Client . delete Label ( any (), Ġany ()) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġinternal Ġfun Ġ` Page Ġattachment Ġoperations Ġare Ġmocked `() Ġ{ ĊĠĠĠĠĠĠĠ Ġrun Blocking Ġ{ Ġdry Run Client . delete Attachment (" 1 2 3 ") Ġ} ĊĠĠĠĠĠĠĠ Ġco Verify ( exact ly Ġ= Ġ 0 ) Ġ{ Ġcon fluence Client . delete Attachment ( any ()) Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġrun Blocking Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdry Run Client . update Attachment ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" 1 2 3 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" 1 1 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPage Attachment Input (" test ", ĠPath (" test . txt "), Ġ" comment ", Ġ" text / plain ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠassertThat ( result ). isEqualTo ( Attachment (" 1 1 1 ", Ġ" test ", Ġempty Map ())) ĊĠĠĠĠĠĠĠ Ġco Verify ( exact ly Ġ= Ġ 0 ) Ġ{ Ġcon fluence Client . update Attachment ( any (), Ġany (), Ġany ()) Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġadd Result Ġ= Ġrun Blocking Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdry Run Client . add Attachments ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" 1 2 3 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPage Attachment Input (" test ", ĠPath (" test . txt "), Ġ" comment ", Ġ" text / plain ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠassertThat ( add Result ). isEqualTo ( Page Attachments ( listOf ( Attachment ("( known Ġafter Ġapply )", Ġ" test ", Ġempty Map ())) )) ĊĠĠĠĠĠĠĠ Ġco Verify ( exact ly Ġ= Ġ 0 ) Ġ{ Ġcon fluence Client . add Attachments ( any (), Ġany ()) Ġ} ĊĠĠĠ Ġ} Ċ Ċ } ĊĊ