package Ġn ol ambda . link router . android Ċ Ċ import Ġio . kot est . core . spec . style . String Spec Ċ import Ġio . kot est . matchers . shouldBe Ċ import Ġn ol ambda . link router . Deep Link Entry Ċ import Ġn ol ambda . link router . android . register strategy . Lazy Register Strategy Ċ import Ġkotlin . system . measure Time Millis Ċ Ċ class ĠAndroid Performance Test Ġ: ĠString Spec ({ ĊĠĠĠ Ġval Ġeager Router Ġ= Ġobject Ġ: ĠAbstract App Router < Unit >() Ġ{} ĊĠĠĠ Ġval Ġlazy Router Ġ= Ġobject Ġ: ĠAbstract App Router < Unit >( ĊĠĠĠĠĠĠĠ Ġregister Strategy Ġ= ĠLazy Register Strategy (), ĊĠĠĠĠĠĠĠ Ġuri Router Factory Ġ= ĠSimple Uri Router Factory ( is Support Concurrent Ġ= Ġtrue ) ĊĠĠĠ Ġ) Ġ{} ĊĊĠĠĠ Ġval Ġsize Ġ= Ġ 1 0 _ 0 0 0 L ĊĊĠĠĠ Ġval Ġroutes Ġ= Ġ( 0 Ġuntil Ġsize ). map Ġ{ ĊĠĠĠĠĠĠĠ Ġobject Ġ: ĠRoute (" https :// test . com /$ it ") Ġ{} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġregister Ġ= Ġ{ Ġrouter : ĠAbstract App Router < Unit > Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġtime Ġ= Ġmeasure Time Millis Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġroutes . forEach Ġ{ Ġroute Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrouter . register ( route ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġroute . route Paths . first () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln (" Triggered : Ġ${ it . info . uri }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġprintln (" registers Ġtook Ġ$ time Ġms Ġfor Ġ$ size Ġentries ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġgo To Ġ= Ġ{ Ġrouter : ĠAbstract App Router < Unit > Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġtime Ġ= Ġmeasure Time Millis Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġroute Ġ= Ġroutes . random (). route Paths . first () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġrouter . goTo ( route ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġprintln (" Go Ġto Ġ=> Ġ$ route ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠAssert ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult . is Handled ĠshouldBe Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult . getResult OrNull < String >() ĠshouldBe Ġroute ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġprintln (" goTo Ġtook Ġ$ time Ġms Ġto Ġresolve Ġfrom Ġ$ size Ġentries ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ" warm Ġup " Ġ{ ĊĠĠĠĠĠĠĠ ĠDeep Link Entry . parse ( routes . first (). route Paths . first ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ" e ager Ġregister Ġspeed " Ġ{ ĊĠĠĠĠĠĠĠ Ġregister ( e ager Router ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ" e ager Ġgo Ġto Ġspeed " Ġ{ ĊĠĠĠĠĠĠĠ Ġgo To ( e ager Router ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ" lazy Ġstrategy Ġregister " Ġ{ ĊĠĠĠĠĠĠĠ Ġregister ( lazy Router ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ" lazy Ġgo Ġto Ġspeed " Ġ{ ĊĠĠĠĠĠĠĠ Ġgo To ( lazy Router ) ĊĠĠĠ Ġ} Ċ }) ĊĊ