package Ġdev . p iment el . data . repository . episodes Ċ Ċ import Ġdev . p iment el . data . dto . Episode DTO Ċ import Ġdev . p iment el . data . dto . Paged Response DTO Ċ import Ġdev . p iment el . data . repositories . episodes . Episode s Repository Impl Ċ import Ġdev . p iment el . data . sources . remote . Episode s Remote DataSource Ċ import Ġdev . p iment el . domain . repositories . Episode s Repository Ċ import Ġio . mock k . confirm Verified Ċ import Ġio . mock k . every Ċ import Ġio . mock k . mock k Ċ import Ġio . mock k . verify Ċ import Ġio . reactivex . rx java 3 . core . Single Ċ import Ġorg . junit . jupiter . api . Assertions . assertNotNull Ċ import Ġorg . junit . jupiter . api . BeforeEach Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġdev . p iment el . domain . models . Episode Model Ġas ĠDomain Episode Model Ċ import Ġdev . p iment el . domain . models . Paged Response Model Ġas ĠDomain Paged Response Ċ Ċ class ĠEp isode s Repository Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġepisode s Remote DataSource Ġ= Ġmock k < Episode s Remote DataSource >() ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġepisode s Repository : ĠEp isode s Repository ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ BeforeEach ĊĠĠĠ Ġfun Ġ` subject Ġmust Ġnot Ġbe Ġnull `() Ġ{ ĊĠĠĠĠĠĠĠ Ġepisode s Repository Ġ= ĠEp isode s Repository Impl ( episodes Remote DataSource ) ĊĊĠĠĠĠĠĠĠ ĠassertNotNull ( episodes Repository ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġget Ġlocations `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdata Response Ġ= ĠP aged Response DTO ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠP aged Response DTO . Info ( 1 0 ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEp isode DTO ( 1 , Ġ" name 1 ", Ġ" type 1 ", Ġ" number 1 "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEp isode DTO ( 2 , Ġ" name 2 ", Ġ" type 2 ", Ġ" number 2 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġdomain Response Ġ= ĠDomain Paged Response ( ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDomain Episode Model ( 1 , Ġ" name 1 ", Ġ" type 1 ", Ġ" number 1 "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDomain Episode Model ( 2 , Ġ" name 2 ", Ġ" type 2 ", Ġ" number 2 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġpage Ġ= Ġ 1 ĊĠĠĠĠĠĠĠ Ġval Ġname Ġ= Ġ" name " ĊĠĠĠĠĠĠĠ Ġval Ġnumber Ġ= Ġ" number " ĊĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġepisode s Remote DataSource . get Episode s ( page , Ġname , Ġnumber ) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠSingle . just ( data Response ) ĊĊĠĠĠĠĠĠĠ Ġepisode s Repository . get Episode s ( page , Ġname , Ġnumber ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Result ( domain Response ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert No Errors () ĊĊĠĠĠĠĠĠĠ Ġverify ( exact ly Ġ= Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġepisode s Remote DataSource . get Episode s ( page , Ġname , Ġnumber ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġconfirm Verified ( episodes Remote DataSource ) ĊĠĠĠ Ġ} Ċ } Ċ