package Ġcom . mapbox . navigation . ui . man eu ver . view Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . Bitmap Ċ import Ġandroid . graphics . Canvas Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroidx . appcompat . view . Context Theme Wrapper Ċ import Ġandroidx . test . core . app . Application Provider Ċ import Ġcom . mapbox . navigation . ui . man eu ver . Lane Icon Helper Ċ import Ġcom . mapbox . navigation . ui . man eu ver . R Ċ import Ġcom . mapbox . navigation . ui . man eu ver . model . Lane Indicator Ċ import Ġio . mock k . every Ċ import Ġio . mock k . mock k Ċ import Ġorg . junit . Assert . assertEquals Ċ import Ġorg . junit . Assert . assertNotNull Ċ import Ġorg . junit . Assert . assertTrue Ċ import Ġorg . junit . Before Ċ 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 ĠMap box Lane Guid ance Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġlane Icon Helper Ġ= Ġmock k < Lane Icon Helper >() ĊĠĠĠ Ġlateinit Ġvar Ġctx : ĠContext ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ Ġctx Ġ= ĠApplication Provider . getApplicationContext () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` view Ġimage Ġlayout Ġrequested `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġwrapper Ġ= ĠContext Theme Wrapper ( ctx , ĠR . style . Map box Style Turn Icon Man eu ver ) ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠMap box Lane Guid ance ( ctx ) ĊĠĠĠĠĠĠĠ Ġval Ġlane Indicator Ġ= ĠL ane Indicator ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isActive ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. directions ( listOf (" left ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠ Ġval Ġactive Direction Ġ= Ġ" left " ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlane Icon Helper . retrieve Lane To Draw ( lane Indicator , Ġactive Direction ) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠR . drawable . mapbox _ ic _ turn _ left ĊĊĠĠĠĠĠĠĠ Ġview . render Lane ( lane Indicator , Ġactive Direction , Ġwrapper ) ĊĊĠĠĠĠĠĠĠ ĠassertTrue ( view . is Layout Requested ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` view Ġimage Ġnot Ġnull `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġwrapper Ġ= ĠContext Theme Wrapper ( ctx , ĠR . style . Map box Style Turn Icon Man eu ver ) ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠMap box Lane Guid ance ( ctx ) ĊĠĠĠĠĠĠĠ Ġval Ġlane Indicator Ġ= ĠL ane Indicator ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isActive ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. directions ( listOf (" left ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠ Ġval Ġactive Direction Ġ= Ġ" left " ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlane Icon Helper . retrieve Lane To Draw ( lane Indicator , Ġactive Direction ) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠR . drawable . mapbox _ ic _ turn _ left ĊĊĠĠĠĠĠĠĠ Ġview . render Lane ( lane Indicator , Ġactive Direction , Ġwrapper ) ĊĊĠĠĠĠĠĠĠ ĠassertNotNull ( view . drawable ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` view Ġimage Ġalpha Ġwhen Ġnot Ġactive `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġwrapper Ġ= ĠContext Theme Wrapper ( ctx , ĠR . style . Map box Style Turn Icon Man eu ver ) ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠMap box Lane Guid ance ( ctx ) ĊĠĠĠĠĠĠĠ Ġval Ġlane Indicator Ġ= ĠL ane Indicator ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isActive ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. directions ( listOf (" left ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠ Ġval Ġactive Direction Ġ= Ġ" left " ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlane Icon Helper . retrieve Lane To Draw ( lane Indicator , Ġactive Direction ) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠR . drawable . mapbox _ ic _ turn _ left ĊĊĠĠĠĠĠĠĠ Ġview . render Lane ( lane Indicator , Ġactive Direction , Ġwrapper ) ĊĠĠĠĠĠĠĠ Ġval Ġactual Alpha Ġ= Ġview . alpha ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( 0 . 5 f , Ġactual Alpha ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` view Ġimage Ġalpha Ġwhen Ġactive `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġwrapper Ġ= ĠContext Theme Wrapper ( ctx , ĠR . style . Map box Style Turn Icon Man eu ver ) ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠMap box Lane Guid ance ( ctx ) ĊĠĠĠĠĠĠĠ Ġval Ġlane Indicator Ġ= ĠL ane Indicator ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isActive ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. directions ( listOf (" left ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠ Ġval Ġactive Direction Ġ= Ġ" left " ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlane Icon Helper . retrieve Lane To Draw ( lane Indicator , Ġactive Direction ) ĊĠĠĠĠĠĠĠ Ġ} Ġreturns ĠR . drawable . mapbox _ ic _ turn _ left ĊĊĠĠĠĠĠĠĠ Ġview . render Lane ( lane Indicator , Ġactive Direction , Ġwrapper ) ĊĠĠĠĠĠĠĠ Ġval Ġactual Alpha Ġ= Ġview . alpha ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 f , Ġactual Alpha ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Bitmap ( drawable : ĠDrawable ): ĠBitmap ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbitmap Ġ= ĠBitmap . create Bitmap ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdrawable . intrinsic Width , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdrawable . intrinsic Height , ĠBitmap . Config . ARGB _ 8 8 8 8 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġcanvas Ġ= ĠCanvas ( bitmap ) ĊĠĠĠĠĠĠĠ Ġdrawable . setBounds ( 0 , Ġ 0 , Ġcanvas . width , Ġcanvas . height ) ĊĠĠĠĠĠĠĠ Ġdrawable . draw ( canvas ) ĊĠĠĠĠĠĠĠ Ġreturn Ġbitmap ĊĠĠĠ Ġ} Ċ } Ċ