package Ġnet . ys library . mon ot weet y . app data . status . remote Ċ Ċ import Ġcom . google . gson . Gson Ċ import Ġcom . twitter . sdk . android . core . Callback Ċ import Ġcom . twitter . sdk . android . core . Result Ċ import Ġio . mock k . Capt uring Slot Ċ import Ġio . mock k . Mock K Annotations Ċ import Ġio . mock k . confirm Verified Ċ import Ġio . mock k . every Ċ import Ġio . mock k . impl . annotations . Mock K Ċ import Ġio . mock k . slot Ċ import Ġio . mock k . verify Ċ import Ġnet . ys library . mon ot weet y . app data . status . Tweet Ċ import Ġnet . ys library . mon ot weet y . read Json From Assets Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ import Ġretrofit 2 . Call Ċ import Ġjava . net . URL Encoder Ċ import Ġcom . twitter . sdk . android . core . models . Tweet Ġas ĠTwitter Tweet Ċ Ċ class ĠStatus Remote Repository Impl Test Ġ{ ĊĊĠĠĠ Ġ@ Mock K ĊĠĠĠ Ġlateinit Ġvar Ġmock Service : ĠUpdate Status Service ĊĊĠĠĠ Ġ@ Mock K ĊĠĠĠ Ġlateinit Ġvar Ġmock Call : ĠCall < Twitter Tweet > ĊĊĠĠĠ Ġlateinit Ġvar Ġcallback Captor : ĠCapt uring Slot < Callback < Twitter Tweet >> ĊĠĠĠ Ġlateinit Ġvar Ġrepository : ĠStatus Remote Repository Impl ĊĊĠĠĠ Ġval Ġgson Ġ= ĠGson () ĊĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun Ġsetup () Ġ{ ĊĠĠĠĠĠĠĠ ĠMock K Annotations . init ( this , Ġrelax Unit Fun Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġcallback Captor Ġ= Ġslot < Callback < Twitter Tweet >>() ĊĊĠĠĠĠĠĠĠ Ġrepository Ġ= ĠStatus Remote Repository Impl ( mock Service ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġupdate () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtweet Ġ= Ġgson . fromJson ( read Json From Assets (" tweet . json "), ĠTwitter Tweet :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTweet . from ( tweet ) ĊĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmock Service . update ( any (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany ()) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns Ġmock Call ĊĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmock Call . enqueue ( capture ( callback Captor )) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠUnit ĊĊĠĠĠĠĠĠĠ Ġrepository . update (" this Ġis Ġtest Ġstring "). test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġverify Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmock Service . update ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠURL Encoder . encode (" this Ġis Ġtest Ġstring ", Ġ" UTF - 8 "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmock Call . enqueue ( callback Captor . captured ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm Verified ( mock Service , Ġmock Call ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcallback Captor . captured . success ( Result ( tweet , Ġnull )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert No Errors () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert Value ( result ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert Complete () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġupdate _ in reply to () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtweet Ġ= Ġgson . fromJson ( read Json From Assets (" tweet . json "), ĠTwitter Tweet :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTweet . from ( tweet ) ĊĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmock Service . update ( any (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany ()) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns Ġmock Call ĊĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmock Call . enqueue ( capture ( callback Captor )) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠUnit ĊĊĠĠĠĠĠĠĠ Ġrepository . update (" this Ġis Ġtest Ġstring ", Ġ 1 2 3 4 5 ). test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġverify Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmock Service . update ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠURL Encoder . encode (" this Ġis Ġtest Ġstring ", Ġ" UTF - 8 "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 2 3 4 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmock Call . enqueue ( callback Captor . captured ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm Verified ( mock Service , Ġmock Call ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcallback Captor . captured . success ( Result ( tweet , Ġnull )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert No Errors () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert Value ( result ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert Complete () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġupdate _ aster isk () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtweet Ġ= Ġgson . fromJson ( read Json From Assets (" tweet . json "), ĠTwitter Tweet :: class . java ) ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠTweet . from ( tweet ) ĊĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmock Service . update ( any (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany (), Ġany ()) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns Ġmock Call ĊĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmock Call . enqueue ( capture ( callback Captor )) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠUnit ĊĊĠĠĠĠĠĠĠ Ġrepository . update (" ** "). test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġverify Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmock Service . update ("% 2 A % 2 A ", Ġnull , Ġnull , Ġnull , Ġnull , Ġnull , Ġnull , Ġnull , Ġnull ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmock Call . enqueue ( callback Captor . captured ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm Verified ( mock Service , Ġmock Call ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcallback Captor . captured . success ( Result ( tweet , Ġnull )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert No Errors () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert Value ( result ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert Complete () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ