/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 3 Ġy vol k Ġ( Y uri ĠVol kov ), Ġhttp :// y ur iv olk ov . com Ċ Ġ* Ċ Ġ* Ġ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 Ġorg . and status . app . account Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Button Ċ import Ġandroid . widget . TextView Ċ import Ġorg . and status . app . First Activity Ċ import Ġorg . and status . app . Intent Extra Ċ import Ġorg . and status . app . R Ċ import Ġorg . and status . app . context . Activity Test Ċ import Ġorg . and status . app . context . Demo Data Ċ import Ġorg . and status . app . context . TestSuite Ċ import Ġorg . and status . app . data . Db Utils Ċ import Ġorg . and status . app . origin . Origin Type Ċ import Ġorg . and status . app . origin . Persistent Origin List Ċ import Ġorg . and status . app . service . My Service Manager Ċ import Ġorg . and status . app . util . My Log Ċ import Ġorg . junit . Assert . assertEquals Ċ import Ġorg . junit . Assert . assertNotNull Ċ import Ġorg . junit . Assert . assertTrue Ċ import Ġorg . junit . Assert . fail Ċ import Ġorg . junit . Test Ċ Ċ /** Ċ Ġ* Ġ@ author Ġy vol k @ y ur iv olk ov . com Ċ Ġ*/ Ċ open Ġclass ĠAccount Settings Activity Test () Ġ: ĠActivity Test < Account Settings Activity >() Ġ{ ĊĠĠĠ Ġopen Ġval Ġaccount Action : ĠString Ġ= ĠIntent . ACTION _ EDIT ĊĠĠĠ Ġopen Ġval Ġaccount Name String : ĠString Ġ= ĠDemo Data . demo Data . conversation AccountName ĊĊĠĠĠ Ġprivate Ġvar Ġma : ĠMy Account Ġ= ĠMy Account . EMPTY ĊĊĠĠĠ Ġoverride Ġfun ĠgetActivity Class (): ĠClass < Account Settings Activity > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠAccount Settings Activity :: class . java ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetActivity Intent (): ĠIntent Ġ{ ĊĠĠĠĠĠĠĠ Ġma Ġ= ĠTest Suite . initialize With Accounts ( this ). accounts . from AccountName ( account Name String ) ĊĠĠĠĠĠĠĠ Ġif Ġ( ma . non Valid ) Ġfail (" No Ġpersistent Ġaccount Ġ'$ account Name String '") ĊĠĠĠĠĠĠĠ Ġreturn ĠIntent (). putExtra ( Intent Extra . ACCOUNT _ NAME . key , Ġaccount Name String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmethod Ġ= Ġ" test " ĊĠĠĠĠĠĠĠ Ġval Ġadd Account Or Verify Credentials Ġ= Ġactivity . findViewById < View ? >( R . id . add _ account ) Ġas ĠButton ? ĊĠĠĠĠĠĠĠ ĠassertTrue ( add Account Or Verify Credentials Ġ!= Ġnull ) ĊĠĠĠĠĠĠĠ Ġassert Unique Name TextField ( R . id . unique Name ) ĊĠĠĠĠĠĠĠ Ġassert Unique Name TextField ( R . id . unique Name _ readonly ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( account Action , Ġactivity . state . account Action ) ĊĠĠĠĠĠĠĠ ĠDb Utils . wait Ms ( method , Ġ 5 0 0 ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" My Service Ġis Ġavailable ", Ġfalse , ĠMy Service Manager . is Service Available ()) ĊĠĠĠĠĠĠĠ Ġif Ġ( account Name String Ġ== ĠDemo Data . demo Data . conversation AccountName ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġopening Origin List () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠDb Utils . wait Ms ( method , Ġ 5 0 0 ) ĊĠĠĠĠĠĠĠ Ġactivity . finish () ĊĠĠĠĠĠĠĠ ĠDb Utils . wait Ms ( method , Ġ 5 0 0 ) ĊĠĠĠĠĠĠĠ ĠFirst Activity . Companion . close All Activities ( get Instrumentation (). target Context ) ĊĠĠĠĠĠĠĠ ĠDb Utils . wait Ms ( method , Ġ 5 0 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġopen Ġfun Ġassert Unique Name TextField ( view Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġunique Name Text Ġ= Ġactivity . findViewById < View ? >( view Id ) Ġas ĠTextView ? ĊĠĠĠĠĠĠĠ ĠassertTrue ( unique Name Text Ġ!= Ġnull ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" Unique Ġname Ġof Ġselected Ġaccount Ġ$ ma ", Ġma . get O AccountName (). get Unique Name (), Ġunique Name Text ?. text . toString ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġopening Origin List () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmethod Ġ= Ġ" test Opening Origin List " ĊĠĠĠĠĠĠĠ Ġval Ġactivity Monitor Ġ= Ġget Instrumentation (). add Monitor ( Persistent Origin List :: class . java . name , Ġnull , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġval Ġclick er : ĠRunnable Ġ= Ġobject Ġ: ĠRunnable Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġrun () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMy Log . v ( this , Ġ"$ method - Log Ġbefore Ġclick ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . select Origin ( Origin Type . GN US O CIAL ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠMy Log . v ( this , Ġ"$ method - Log Ġbefore Ġrun Ġclick er Ġ 1 ") ĊĠĠĠĠĠĠĠ Ġactivity . run On Ui Thread ( click er ) ĊĠĠĠĠĠĠĠ Ġval Ġnext Activity Ġ= Ġget Instrumentation (). waitFor Monitor WithTimeout ( activity Monitor , Ġ 1 5 0 0 0 ) ĊĠĠĠĠĠĠĠ ĠMy Log . v ( this , Ġmethod Ġ+ Ġ"- Log Ġafter ĠwaitFor Monitor : Ġ" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ Ġnext Activity ) ĊĠĠĠĠĠĠĠ ĠassertNotNull (" Next Ġactivity Ġis Ġopened Ġand Ġcaptured ", Ġnext Activity ) ĊĠĠĠĠĠĠĠ ĠTest Suite . waitFor List Loaded ( next Activity , Ġ 6 ) ĊĠĠĠĠĠĠĠ ĠDb Utils . wait Ms ( method , Ġ 5 0 0 ) ĊĠĠĠĠĠĠĠ Ġnext Activity . finish () ĊĠĠĠ Ġ} Ċ } Ċ