package Ġcom . example . android . mar sp hot os Ċ Ċ import Ġcom . example . android . mar sp hot os . network . M ars ApiService Ċ import Ġcom . squareup . mos hi . M oshi Ċ import Ġcom . squareup . mos hi . kotlin . reflect . Kotlin Json Adapter Factory Ċ import Ġjunit . framework . Assert .* Ċ import Ġkotlinx . coroutines . run Blocking Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ import Ġretrofit 2 . Ret rofit Ċ import Ġretrofit 2 . converter . mos hi . M oshi Converter Factory Ċ Ċ class ĠM ars ApiService Test Ġ: ĠBaseTest () Ġ{ ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġservice : ĠM ars ApiService ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun Ġsetup () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġurl Ġ= Ġmock WebServer . url ("/") ĊĠĠĠĠĠĠĠ Ġservice Ġ= ĠRet rofit . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( url ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Converter Factory ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠM oshi Converter Factory . create ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠM oshi . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add ( Kotlin Json Adapter Factory ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( M ars ApiService :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġapi _ service () Ġ{ ĊĠĠĠĠĠĠĠ Ġenqueue (" mars _ photos . json ") ĊĠĠĠĠĠĠĠ Ġrun Blocking Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= Ġservice . get Photos () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNotNull ( response ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue (" The Ġlist Ġis Ġnot Ġempty ", Ġ! response . isEmpty ()) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" The ĠIDs Ġdid Ġnot Ġmatch Ġ", Ġ" 4 2 4 9 0 5 ", Ġresponse [ 0 ]. id ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }