package Ġbr . com . stone . em eral d components . basics . input Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . res . Configuration Ċ import Ġandroidx . fragment . app . Fragment Activity Ċ import Ġandroidx . test . core . app . Application Provider Ċ import Ġbr . com . stone . em eral d components . R Ċ import Ġbr . com . stone . em eral d components . basic . input . E mer ald Mask ed EditText Ċ import Ġbr . com . stone . em eral d components . basic . input . E mer ald Mask ed EditText . Mask Types . PRE _ FILL Ċ import Ġorg . junit . Assert . assertEquals Ċ import Ġorg . junit . Assert . assertFalse Ċ import Ġorg . junit . Assert . assertNotNull Ċ import Ġorg . junit . Assert . assertNull Ċ 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 Ċ import Ġorg . ro bo lectric . Ro bo lectric TestRunner Ċ import Ġjava . util . Locale Ċ Ċ @ RunWith ( Ro bo lectric TestRunner :: class ) Ċ class ĠE mer ald Mask ed EditText Test Ġ{ ĊĊĠĠĠ Ġlateinit Ġvar Ġview : ĠE mer ald Mask ed EditText ĊĊĠĠĠ Ġlateinit Ġvar Ġdefault ErrorMessage : ĠString ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun Ġsetup () Ġ{ ĊĠĠĠĠĠĠĠ Ġview Ġ= ĠE mer ald Mask ed EditText ( Application Provider . getApplicationContext ()) ĊĠĠĠĠĠĠĠ Ġdefault ErrorMessage Ġ= ĠApplication Provider . getApplicationContext < Context >() ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. getString ( R . string . em eral d _ mask _ error ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġcreate Ġview `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠE mer ald Mask ed EditText ( Application Provider . getApplicationContext ()) ĊĠĠĠĠĠĠĠ ĠassertNotNull ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġcreate Ġview Ġwith Ġattribute Ġset `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠE mer ald Mask ed EditText ( Application Provider . getApplicationContext (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠRo bo lectric . build Attribute Set (). build ()) ĊĠĠĠĠĠĠĠ ĠassertNotNull ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġdefine Ġmask `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmask Ġ= Ġ" A " ĊĠĠĠĠĠĠĠ Ġview . define Mask ( mask ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( mask , Ġview . hint ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġdefine Ġhint Ġby Ġph on ne Ġnumber Ġmask `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmask Ġ= Ġ"( 0 0 ) Ġ 0 0 0 0 - 0 0 0 0 " ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . PH ON ENUM BER ĊĠĠĠĠĠĠĠ ĠassertEquals ( mask , Ġview . hint ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġdefine Ġhint Ġby Ġcell Ġphone Ġmask `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmask Ġ= Ġ"( 0 0 ) Ġ 0 0 0 0 0 - 0 0 0 0 " ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . CELL PH ON ENUM BER ĊĠĠĠĠĠĠĠ ĠassertEquals ( mask , Ġview . hint ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġdefine Ġhint Ġby Ġc pf Ġmask `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmask Ġ= Ġ" 0 0 0 . 0 0 0 . 0 0 0 - 0 0 " ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . CP F ĊĠĠĠĠĠĠĠ ĠassertEquals ( mask , Ġview . hint ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġdefine Ġhint Ġc np j Ġmask `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmask Ġ= Ġ" 0 0 . 0 0 0 . 0 0 0 / 0 0 0 0 - 0 0 " ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . CN PJ ĊĠĠĠĠĠĠĠ ĠassertEquals ( mask , Ġview . hint ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġdefine Ġhint Ġby Ġc ep Ġmask `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmask Ġ= Ġ" 0 0 0 0 0 - 0 0 0 " ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . CEP ĊĠĠĠĠĠĠĠ ĠassertEquals ( mask , Ġview . hint ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġdefine Ġhint Ġby Ġtext Ġmask `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmask Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . TEXT ĊĠĠĠĠĠĠĠ ĠassertEquals ( mask , Ġview . hint ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġbe Ġvalid Ġby Ġphone Ġnumber `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . PH ON ENUM BER ĊĊĠĠĠĠĠĠĠ Ġview . setText ("( 1 1 ) Ġ 1 1 1 1 - 1 1 1 1 ") ĊĠĠĠĠĠĠĠ ĠassertNull ( view . error ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText ("( 1 1 ) Ġ 1 1 1 1 - 1 1 1 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġbe Ġvalid Ġby Ġcell Ġphone `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . CELL PH ON ENUM BER ĊĊĠĠĠĠĠĠĠ Ġview . setText ("( 1 1 ) Ġ 1 1 1 1 - 1 1 1 1 2 ") ĊĠĠĠĠĠĠĠ ĠassertNull ( view . error ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText ("( 1 1 ) Ġ 1 1 1 1 - 1 1 1 1 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġbe Ġvalid Ġby Ġemail `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . EMAIL ĊĊĠĠĠĠĠĠĠ Ġview . setText (" email @ mail . com ") ĊĠĠĠĠĠĠĠ ĠassertNull ( view . error ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" email ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠApplication Provider . getApplicationContext < Context >() ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġcontext . getString ( R . string . em eral d _ invalid _ email )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" email @ email ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġcontext . getString ( R . string . em eral d _ invalid _ email )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" email @ email .") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġcontext . getString ( R . string . em eral d _ invalid _ email )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText ("@ email . com ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġcontext . getString ( R . string . em eral d _ invalid _ email )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" email @. com ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġcontext . getString ( R . string . em eral d _ invalid _ email )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġbe Ġvalid Ġby Ġc pf `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . CP F ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 4 6 6 . 8 8 7 . 0 8 4 - 6 9 ") ĊĠĠĠĠĠĠĠ ĠassertNull ( view . error ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 5 1 8 . 4 6 1 . 0 0 1 - 2 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 5 1 8 . 4 6 1 . 0 1 - 4 2 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 5 1 8 . 4 1 . 0 0 1 - 4 2 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 1 8 . 4 6 1 . 0 0 1 - 4 2 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġbe Ġvalid Ġby Ġc np j `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . CN PJ ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 2 7 . 1 4 6 . 3 5 9 / 0 0 0 1 - 2 8 ") ĊĠĠĠĠĠĠĠ ĠassertNull ( view . error ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 5 6 . 6 1 4 . 5 3 2 / 0 0 0 1 - 7 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 5 6 . 6 1 4 . 5 3 2 / 0 1 - 7 3 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 5 6 . 6 1 4 . 5 2 / 0 0 1 - 7 3 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 5 6 . 6 4 . 5 3 2 / 0 0 1 - 7 3 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 5 . 6 1 4 . 5 3 2 / 0 0 1 - 7 3 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġbe Ġvalid Ġby Ġc ep `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . CEP ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 2 2 0 4 1 - 0 8 0 ") ĊĠĠĠĠĠĠĠ ĠassertNull ( view . error ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 2 2 0 4 1 - 0 8 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 2 2 0 4 - 0 8 0 ") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġbe Ġvalid Ġby Ġtext `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . TEXT ĊĊĠĠĠĠĠĠĠ Ġview . setText (" test ") ĊĠĠĠĠĠĠĠ ĠassertNull ( view . error ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( view . isValid ()) ĊĊĠĠĠĠĠĠĠ Ġview . setText ("") ĊĠĠĠĠĠĠĠ Ġview . on Focus ChangeListener . on Focus Change ( view , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . errorMessage , Ġdefault ErrorMessage ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( view . isValid ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġbe Ġvalid Ġby Ġpre Ġfill `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠPRE _ FILL ĊĊĠĠĠĠĠĠĠ Ġview . setText (" test ") ĊĠĠĠĠĠĠĠ ĠassertNull ( view . error ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( view . isValid ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġdefine Ġmask Ġby Ġcurrency `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . CUR RE NCY ĊĠĠĠĠĠĠĠ Ġview . setText (" 1 2 3 ") ĊĠĠĠĠĠĠĠ ĠassertEquals (' 3 ', Ġview . text ?. last ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġdefine Ġmask Ġby Ġpre Ġfill `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠPRE _ FILL ĊĠĠĠĠĠĠĠ ĠassertEquals ( view . type , ĠPRE _ FILL ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġuse Ġdefault Ġvalue Ġwhen Ġit Ġis Ġnot Ġset Ġby Ġthe Ġuser `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠPRE _ FILL ĊĊĠĠĠĠĠĠĠ Ġview . setText ("") ĊĊĠĠĠĠĠĠĠ ĠassertEquals (" 0 ", Ġview . text . toString ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġset Ġmask `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . NONE ĊĠĠĠĠĠĠĠ ĠassertEquals ( E mer ald Mask ed EditText . Mask Types . NONE , Ġview . type ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġset Ġun masked Ġtext Ġby Ġcurrency `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= ĠE mer ald Mask ed EditText . Mask Types . CUR RE NCY ĊĠĠĠĠĠĠĠ Ġview . setText (" 1 2 3 . 1 2 ") ĊĠĠĠĠĠĠĠ ĠassertEquals (" 1 2 3 . 1 2 ", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġset Ġun masked Ġtext Ġand Ġlocale Ġby Ġcurrency `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlocale Ġ= ĠLocale . US ĊĠĠĠĠĠĠĠ ĠLocale . setDefault ( locale ) ĊĊĠĠĠĠĠĠĠ Ġval Ġactivity Ġ= ĠRo bo lectric . build Activity ( Fragment Activity :: class . java ). get () ĊĠĠĠĠĠĠĠ Ġactivity . set Theme ( R . style . E mer ald ) ĊĊĠĠĠĠĠĠĠ Ġval Ġconfiguration : ĠConfiguration Ġ= Ġactivity . resources . configuration ĊĠĠĠĠĠĠĠ Ġconfiguration . set Locale ( locale ) ĊĊĠĠĠĠĠĠĠ Ġview . type Ġ= Ġ( E mer ald Mask ed EditText . Mask Types . CUR RE NCY ) ĊĠĠĠĠĠĠĠ Ġview . setText (" 1 2 3 . 1 2 ") ĊĠĠĠĠĠĠĠ ĠassertEquals ("$ 1 2 3 . 1 2 ", Ġview . text . toString ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 1 2 3 . 1 2 ", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġset Ġun masked Ġtext Ġby Ġphone Ġnumber `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= Ġ( E mer ald Mask ed EditText . Mask Types . PH ON ENUM BER ) ĊĠĠĠĠĠĠĠ Ġview . setText (" 8 4 9 9 9 9 9 9 9 9 ") ĊĠĠĠĠĠĠĠ ĠassertEquals ("( 8 4 ) Ġ 9 9 9 9 - 9 9 9 9 ", Ġview . text . toString ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 8 4 9 9 9 9 9 9 9 9 ", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġset Ġun masked Ġtext Ġby Ġcell Ġphone `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= Ġ( E mer ald Mask ed EditText . Mask Types . CELL PH ON ENUM BER ) ĊĠĠĠĠĠĠĠ Ġview . setText (" 8 4 9 9 9 9 9 9 9 9 9 ") ĊĠĠĠĠĠĠĠ ĠassertEquals ("( 8 4 ) Ġ 9 9 9 9 9 - 9 9 9 9 ", Ġview . text . toString ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 8 4 9 9 9 9 9 9 9 9 9 ", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġset Ġun masked Ġtext Ġby Ġc ep `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= Ġ( E mer ald Mask ed EditText . Mask Types . CEP ) ĊĠĠĠĠĠĠĠ Ġview . setText (" 2 1 0 0 0 0 0 0 ") ĊĠĠĠĠĠĠĠ ĠassertEquals (" 2 1 0 0 0 - 0 0 0 ", Ġview . text . toString ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 2 1 0 0 0 0 0 0 ", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġset Ġun masked Ġtext Ġby Ġc np j `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= Ġ( E mer ald Mask ed EditText . Mask Types . CN PJ ) ĊĠĠĠĠĠĠĠ Ġview . setText (" 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ") ĊĠĠĠĠĠĠĠ ĠassertEquals (" 0 0 . 0 0 0 . 0 0 0 / 0 0 0 0 - 0 0 ", Ġview . text . toString ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġset Ġun masked Ġtext Ġby Ġc pf `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= Ġ( E mer ald Mask ed EditText . Mask Types . CP F ) ĊĠĠĠĠĠĠĠ Ġview . setText (" 0 0 0 0 0 0 0 0 0 0 0 ") ĊĠĠĠĠĠĠĠ ĠassertEquals (" 0 0 0 . 0 0 0 . 0 0 0 - 0 0 ", Ġview . text . toString ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 0 0 0 0 0 0 0 0 0 0 0 ", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġset Ġun masked Ġtext Ġby Ġemail `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= Ġ( E mer ald Mask ed EditText . Mask Types . EMAIL ) ĊĠĠĠĠĠĠĠ Ġview . setText (" email @ email . com ") ĊĠĠĠĠĠĠĠ ĠassertEquals (" email @ email . com ", Ġview . text . toString ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ("", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġset Ġun masked Ġtext Ġby Ġnone `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= Ġ( E mer ald Mask ed EditText . Mask Types . NONE ) ĊĠĠĠĠĠĠĠ Ġval Ġtext Ġ= Ġ" Test e Ġtest e Ġde Ġtest e " ĊĠĠĠĠĠĠĠ Ġview . setText ( text ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( text , Ġview . text . toString ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ("", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġbe Ġvalid Ġcredit Ġcard `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= Ġ( E mer ald Mask ed EditText . Mask Types . CRED IT _ CARD ) ĊĠĠĠĠĠĠĠ Ġval Ġtext Ġ= Ġ" 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 " ĊĠĠĠĠĠĠĠ Ġview . setText ( text ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 1 1 1 1 Ġ 2 2 2 2 Ġ 3 3 3 3 Ġ 4 4 4 4 ", Ġview . text . toString ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 ", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġbe Ġvalid Ġcredit Ġcard Ġexpiration Ġdate `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= Ġ( E mer ald Mask ed EditText . Mask Types . CRED IT _ CARD _ EXP _ DATE ) ĊĠĠĠĠĠĠĠ Ġval Ġtext Ġ= Ġ" 1 2 2 1 " ĊĠĠĠĠĠĠĠ Ġview . setText ( text ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 1 2 / 2 1 ", Ġview . text . toString ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 1 2 2 1 ", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġbe Ġvalid Ġcredit Ġcard Ġcv v `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . type Ġ= Ġ( E mer ald Mask ed EditText . Mask Types . CRED IT _ CARD _ CV V ) ĊĠĠĠĠĠĠĠ Ġval Ġtext Ġ= Ġ" 0 0 0 " ĊĠĠĠĠĠĠĠ Ġview . setText ( text ) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 0 0 0 ", Ġview . text . toString ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" 0 0 0 ", Ġview . un masked Text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Should Ġremove Ġold Ġtext Ġwatch ers Ġwhen Ġa Ġnew Ġone Ġis Ġselected `() Ġ{ ĊĠĠĠĠĠĠĠ Ġview . run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfill Length Ġ= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfill Sequence Ġ= Ġ' 0 ' ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtype Ġ= ĠPRE _ FILL ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġview . run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfill Length Ġ= Ġ 3 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfill Sequence Ġ= Ġ' a ' ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtype Ġ= ĠPRE _ FILL ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġview . setText (" 2 3 ") ĊĠĠĠĠĠĠĠ ĠassertEquals (" a 2 3 ", Ġview . text . toString ()) ĊĠĠĠ Ġ} Ċ }