package Ġcom . mapbox . services . android . navigation . v 5 . route Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . res . Configuration Ċ import Ġandroid . content . res . Resources Ċ import Ġandroid . location . Location Ċ import Ġcom . mapbox . api . directions . v 5 . models . Directions Route Ċ import Ġcom . mapbox . api . directions . v 5 . models . Route Options Ċ import Ġcom . mapbox . geojson . Point Ċ import Ġcom . mapbox . services . android . navigation . v 5 . navigation . Navigation Route Ċ import Ġcom . mapbox . services . android . navigation . v 5 . route progress . Route Progress Ċ import Ġcom . mapbox . services . android . navigation . v 5 . utils . Route Utils Ċ import Ġio . mock k . every Ċ import Ġio . mock k . mock k Ċ import Ġio . mock k . verify Ċ import Ġjava . util . ArrayList Ċ import Ġjava . util . Locale Ċ import Ġjunit . framework . TestCase . assertNotNull Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . runner . RunWith Ċ import Ġorg . ro bo lectric . Ro bo lectric TestRunner Ċ Ċ @ RunWith ( Ro bo lectric TestRunner :: class ) Ċ class ĠRoute Fetcher Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcancel Route Call _ cancel sWith NonNull Navigation Route () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= Ġmock k < Context >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġval Ġnavigation Route Ġ= Ġmock k < Navigation Route >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġval Ġroute Utils Ġ= Ġmock k < Route Utils >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġval Ġroute Fetcher Ġ= ĠRoute Fetcher ( context , Ġ" pk . xx ", Ġroute Utils , Ġnavigation Route ) ĊĊĠĠĠĠĠĠĠ Ġroute Fetcher . cancel Route Call () ĊĊĠĠĠĠĠĠĠ Ġverify Ġ{ Ġnavigation Route . cancel Call () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġbuild Request From _ returns Valid Builder () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= Ġbuild Mock Context () ĊĠĠĠĠĠĠĠ Ġval Ġlocation Ġ= Ġbuild Mock Location () ĊĠĠĠĠĠĠĠ Ġval Ġremaining Coordinates Ġ= Ġbuild Coordinate List () ĊĠĠĠĠĠĠĠ Ġval Ġroute Progress Ġ= Ġbuild Mock Progress ( remaining Coordinates ) ĊĠĠĠĠĠĠĠ Ġval Ġroute Utils Ġ= Ġmock k < Route Utils >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġroute Utils . calculate Remaining Way points ( route Progress ) Ġ} Ġreturns Ġremaining Coordinates ĊĠĠĠĠĠĠĠ Ġval Ġroute Fetcher Ġ= ĠRoute Fetcher ( context , Ġ" pk . xx ") ĊĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= Ġroute Fetcher . build Request From ( location , Ġroute Progress ) ĊĊĠĠĠĠĠĠĠ ĠassertNotNull ( builder ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġfind Route With _ call Navigation Route () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= Ġmock k < Context >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġval Ġnavigation Route Ġ= Ġmock k < Navigation Route >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= Ġmock k < Navigation Route . Builder >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġbuilder . build () Ġ} Ġreturns Ġnavigation Route ĊĠĠĠĠĠĠĠ Ġval Ġroute Utils Ġ= Ġmock k < Route Utils >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġval Ġroute Fetcher Ġ= ĠRoute Fetcher ( context , Ġ" pk . xx ", Ġroute Utils , Ġnavigation Route ) ĊĊĠĠĠĠĠĠĠ Ġroute Fetcher . find Route With ( builder ) ĊĊĠĠĠĠĠĠĠ Ġverify Ġ{ Ġnavigation Route . get Route ( any ()) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġbuild Mock Context (): ĠContext Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= Ġmock k < Context >() ĊĠĠĠĠĠĠĠ Ġval Ġresources Ġ= Ġmock k < Resources >() ĊĠĠĠĠĠĠĠ Ġval Ġconfiguration Ġ= ĠConfiguration () ĊĠĠĠĠĠĠĠ Ġconfiguration . set Locale ( Locale . US ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġresources . configuration Ġ} Ġreturns Ġconfiguration ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġcontext . resources Ġ} Ġreturns Ġresources ĊĠĠĠĠĠĠĠ Ġreturn Ġcontext ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġbuild Mock Location (): ĠLocation Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlocation Ġ= Ġmock k < Location >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġlocation . longitude Ġ} Ġreturns Ġ 1 . 2 3 ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġlocation . latitude Ġ} Ġreturns Ġ 2 . 3 4 ĊĠĠĠĠĠĠĠ Ġreturn Ġlocation ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġbuild Mock Progress ( remaining Coordinates : ĠList < Point >): ĠRoute Progress Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġroute Ġ= Ġmock k < Directions Route >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġval Ġroute Options Ġ= Ġmock k < Route Options >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġroute Options . coordinates () Ġ} Ġreturns Ġremaining Coordinates ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġroute Options . waypoint Indices () Ġ} Ġreturns Ġ" 0 ; 2 ; 3 " ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġroute . route Options () Ġ} Ġreturns Ġroute Options ĊĠĠĠĠĠĠĠ Ġval Ġroute Progress Ġ= Ġmock k < Route Progress >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġroute Progress . remaining Way points () Ġ} Ġreturns Ġ 2 ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġroute Progress . directions Route () Ġ} Ġreturns Ġroute ĊĠĠĠĠĠĠĠ Ġreturn Ġroute Progress ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġbuild Coordinate List (): ĠList < Point > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcoordinates Ġ= ĠArrayList < Point >() ĊĠĠĠĠĠĠĠ Ġcoordinates . add ( Point . from Lng Lat ( 1 . 2 3 4 , Ġ 5 . 6 7 8 )) ĊĠĠĠĠĠĠĠ Ġcoordinates . add ( Point . from Lng Lat ( 9 . 0 1 2 , Ġ 3 . 4 5 6 )) ĊĠĠĠĠĠĠĠ Ġcoordinates . add ( Point . from Lng Lat ( 7 . 8 9 0 , Ġ 1 . 2 3 4 )) ĊĠĠĠĠĠĠĠ Ġcoordinates . add ( Point . from Lng Lat ( 5 . 6 7 8 , Ġ 9 . 0 1 2 )) ĊĠĠĠĠĠĠĠ Ġreturn Ġcoordinates ĊĠĠĠ Ġ} Ċ } Ċ