/* Ġ ĠComponent Object Leak TestCase . java Ċ Ġ* Ġ ĠWh ir ly G lo be Lib Ċ Ġ* Ċ Ġ* Ġ ĠCreated Ġby Ġj m nav ar ro Ċ Ġ* Ġ ĠCopyright Ġ 2 0 1 1 - 2 0 2 2 Ġmouse bird Ġconsult ing Ċ Ġ* Ċ Ġ* Ġ ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġ Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* Ġ ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ġ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* Ġ ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġ Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* Ġ ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* Ġ ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġ Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġcom . mouse bird consult ing . aut ot ester . TestCase s Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . graphics . Bitmap Ċ import Ġandroid . graphics . Bitmap Factory Ċ import Ġcom . mouse bird . map ly .* Ċ import Ġcom . mouse bird consult ing . aut ot ester . Framework . Map ly TestCase Ċ import Ġcom . mouse bird consult ing . aut ot ester . R Ċ import Ġjava . util .* Ċ Ċ class ĠComponent Object Leak TestCase ( activity : ĠActivity ?) Ġ: ĊĠĠĠĠĠĠĠ ĠMap ly TestCase ( activity , Ġ" Component Object ĠLe ak ĠTest ") Ġ{ ĊĊĠĠĠ Ġ@ Throws ( Exception :: class ) ĊĠĠĠ Ġoverride Ġfun ĠsetUp With G lo be ( glo be VC : ĠG lo be Controller ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġbase Case . setUp With G lo be ( glo be VC ) ĊĠĠĠĠĠĠĠ Ġglo be VC . setPosition Geo ( 0 . 5 , Ġ 0 . 5 , Ġ 1 . 0 ) ĊĠĠĠĠĠĠĠ Ġadd And Remove ( COUNT , ĠD URATION _ SEC ) ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĠĠĠĠĊĠĠĠ Ġ@ Throws ( Exception :: class ) ĊĠĠĠ Ġoverride Ġfun ĠsetUp With Map ( map VC : ĠMap Controller ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġbase Case . setUp With Map ( map VC ) ĊĠĠĠĠĠĠĠ Ġmap VC . setPosition Geo ( 0 . 5 , Ġ 0 . 5 , Ġ 1 . 0 ) ĊĠĠĠĠĠĠĠ Ġadd And Remove ( COUNT , ĠD URATION _ SEC ) ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĠĠĠĠĊĠĠĠ Ġoverride Ġfun Ġshutdown () Ġ{ ĊĠĠĠĠĠĠĠ Ġstop Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġbase Case . shutdown () ĊĠĠĠĠĠĠĠ Ġsuper . shutdown () ĊĠĠĠ Ġ} ĊĠĠĠĠĊĠĠĠ Ġprivate Ġfun Ġadd And Remove ( count : ĠInt , Ġduration Sec : ĠDouble ) Ġ{ ĊĠĠĠĠĠĠĠ Ġstop Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġicon Ġ= ĠBitmap Factory . decode Resource ( activity . resources , ĠR . drawable . st icker ) ĊĠĠĠĠĠĠĠ Ġcontroller ?. add Post Surface Runnable ({ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! stop ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠendTime Ġ= ĠSystem . nano Time () Ġ+ Ġ( duration Sec Ġ* Ġ 1 . 0 e 9 ). to Long () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd And Remove ( count , ĠendTime , Ġicon ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}, Ġ 5 0 0 0 ) ĊĠĠĠ Ġ} ĊĠĠĠĠĊĠĠĠ Ġprivate Ġfun Ġadd And Remove ( count : ĠInt , ĠendTime : ĠLong , Ġimage : ĠBitmap ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview C Ġ= Ġcontroller ĊĠĠĠĠĠĠĠ Ġif Ġ( System . nano Time () Ġ< ĠendTime Ġ&& Ġview C Ġ!= Ġnull Ġ&& Ġ! stop ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview C . add Post Surface Runnable ({ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd And Remove ( count , Ġimage ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd And Remove ( count , ĠendTime , Ġimage ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠĠĊĠĠĠ Ġprivate Ġfun Ġadd And Remove ( count : ĠInt , Ġimg : ĠBitmap ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview C Ġ= Ġcontroller Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġmarker Info Ġ= ĠMarker Info (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// set Min Vis ( 0 . f ); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// setMax Vis ( 1 . f ); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// setColor ( 1 ); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdraw Priority Ġ= Ġ 1 0 0 1 0 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġmarkers Ġ= ĠArrayList < Component Object >( count ) ĊĠĠĠĠĠĠĠ Ġvar Ġi Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġwhile Ġ( i ++ Ġ< Ġcount Ġ&& Ġ! stop ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmarker Ġ= ĠScreen Marker (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage Ġ= Ġimg ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġloc Ġ= ĠPoint 2 d ( Math . random (), ĠMath . random ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsize Ġ= ĠPoint 2 d ( 6 4 . 0 , Ġ 6 4 . 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview C . add Screen Marker ( marker , Ġmarker Info , ĠThread Mode . Thread Any )?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmarkers . add ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġview C . remove Objects ( markers , ĠThread Mode . Thread Any ) ĊĠĠĠ Ġ} ĊĠĠĠĠĊĠĠĠ Ġvar Ġstop Ġ= Ġfalse ĊĠĠĠ Ġprivate Ġval Ġbase Case Ġ= ĠSt amen Remote TestCase ( getActivity ()). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġdo Color Change Ġ= Ġfalse ĊĠĠĠ Ġ} ĊĠĠĠĠĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠCOUNT Ġ= Ġ 1 0 0 ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠD URATION _ SEC Ġ= Ġ 1 2 0 . 0 ĊĠĠĠ Ġ} Ċ }