package Ġorg . and status . app . origin Ċ Ċ import Ġorg . and status . app . context . Actor In Timeline Ċ import Ġorg . and status . app . context . Demo Data Ċ import Ġorg . and status . app . context . My Context Ċ import Ġorg . and status . app . context . TestSuite Ċ import Ġorg . and status . app . data . Demo Note Inser ter Ċ import Ġorg . and status . app . data . Download Status Ċ import Ġorg . and status . app . data . My Query Ċ import Ġorg . and status . app . database . table . Note Table Ċ import Ġorg . and status . app . net . http . Ssl Mode Enum Ċ import Ġorg . and status . app . net . social . A Activity Ċ import Ġorg . junit . After Ċ import Ġorg . junit . Assert Ċ import Ġorg . junit . Test Ċ Ċ class ĠOrigin Test Ġ{ ĊĠĠĠ Ġprivate Ġval Ġmy Context : ĠMy Context Ġ= ĠTest Suite . initialize With Accounts ( this ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Text Limit () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġurl String Ġ= Ġ" https :// github . com / and status / and status / issues / 4 1 " ĊĠĠĠĠĠĠĠ Ġval Ġbody Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ(" I Ġset Ġ\" Short en ĠURL Ġwith : ĠQT TR _ AT \" ĠURL Ġlonger Ġthan Ġ 2 5 ĠText Ġlonger Ġthan Ġ 1 4 0 . ĠWill Ġthis Ġbe Ġshort ened : Ġ" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ Ġurl String ) ĊĠĠĠĠĠĠĠ Ġvar Ġorigin : ĠOrigin Ġ= Ġmy Context . orig ins . first OfType ( Origin Type . Companion . ORIGIN _ TYPE _ DEFAULT ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( Origin Type . TW IT TER , Ġorigin . origin Type ) ĊĠĠĠĠĠĠĠ Ġorigin Ġ= Ġmy Context . orig ins . first OfType ( Origin Type . TW IT TER ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( Origin Type . TW IT TER , Ġorigin . origin Type ) ĊĠĠĠĠĠĠĠ Ġvar Ġtext Limit Ġ= Ġ 2 8 0 ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals (" Text limit ", Ġtext Limit . to Long (), Ġorigin . getText Limit (). to Long ()) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals (" Short ĠURL Ġlength ", Ġ 2 3 , Ġorigin . short Url Length . to Long ()) ĊĠĠĠĠĠĠĠ Ġval Ġcharacters Left Ġ= Ġorigin . characters Left For Note ( body ) ĊĠĠĠĠĠĠĠ Ġ// ĠDep ending Ġon Ġnumber Ġof Ġspans ! ĊĠĠĠĠĠĠĠ ĠAssert . assertTrue ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Characters Ġleft Ġ$ characters Left ", Ġcharacters Left Ġ== Ġ 1 5 8 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ|| Ġcharacters Left Ġ== Ġ 1 4 2 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠAssert . assertFalse ( origin . is Mention As Web F inger Id ()) ĊĠĠĠĠĠĠĠ Ġorigin Ġ= Ġmy Context . orig ins . first OfType ( Origin Type . P UM PIO ) ĊĠĠĠĠĠĠĠ Ġtext Limit Ġ= ĠTEXT _ LIMIT _ MAXIMUM ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals (" Text limit ", Ġtext Limit . to Long (), Ġorigin . getText Limit (). to Long ()) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals (" Short ĠURL Ġlength ", Ġ 0 , Ġorigin . short Url Length . to Long ()) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Characters Ġleft ", Ġ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġorigin . getText Limit () Ġ- Ġbody . length ). to Long (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġorigin . characters Left For Note ( body ). to Long () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠAssert . assertTrue ( origin . is Mention As Web F inger Id ()) ĊĠĠĠĠĠĠĠ Ġorigin Ġ= Ġmy Context . orig ins . first OfType ( Origin Type . GN US O CIAL ) ĊĠĠĠĠĠĠĠ Ġtext Limit Ġ= ĠOrigin . Companion . TEXT _ LIMIT _ FOR _ WE BF ING ER _ ID ĊĠĠĠĠĠĠĠ Ġval Ġupload Limit Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġvar Ġconfig : ĠOrigin Config Ġ= ĠOrigin Config . Companion . from Text Limit ( text Limit , Ġupload Limit . to Long ()) ĊĠĠĠĠĠĠĠ Ġorigin Ġ= ĠOrigin . Builder ( origin ). save ( config ). build () ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals (" Text limit ", Ġtext Limit . to Long (), Ġorigin . getText Limit (). to Long ()) ĊĠĠĠĠĠĠĠ ĠAssert . assertTrue ( origin . is Mention As Web F inger Id ()) ĊĠĠĠĠĠĠĠ Ġtext Limit Ġ= Ġ 1 4 0 ĊĠĠĠĠĠĠĠ Ġconfig Ġ= ĠOrigin Config . Companion . from Text Limit ( text Limit , Ġupload Limit . to Long ()) ĊĠĠĠĠĠĠĠ Ġorigin Ġ= ĠOrigin . Builder ( origin ). save ( config ). build () ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals (" Text limit ", Ġtext Limit . to Long (), Ġorigin . getText Limit (). to Long ()) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals (" Short ĠURL Ġlength ", Ġ 0 , Ġorigin . short Url Length . to Long ()) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Characters Ġleft ", Ġ( text Limit Ġ- Ġbody . length ). to Long (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġorigin . characters Left For Note ( body ). to Long () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠAssert . assertFalse ( origin . is Mention As Web F inger Id ()) ĊĠĠĠĠĠĠĠ Ġtext Limit Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġconfig Ġ= ĠOrigin Config . Companion . from Text Limit ( text Limit , Ġupload Limit . to Long ()) ĊĠĠĠĠĠĠĠ ĠAssert . assertTrue ( config . non Empty ) ĊĠĠĠĠĠĠĠ Ġorigin Ġ= ĠOrigin . Builder ( origin ). save ( config ). build () ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals (" Text limit ", ĠTEXT _ LIMIT _ MAXIMUM . to Long (), Ġorigin . getText Limit (). to Long ()) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Characters Ġleft Ġ$ origin ", Ġ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġorigin . getText Limit () Ġ- Ġbody . length ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ Ġif Ġ( origin . short Url Length Ġ> Ġ 0 ) Ġorigin . short Url Length Ġ- Ġurl String . length Ġelse Ġ 0 ). to Long (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġorigin . characters Left For Note ( body ). to Long () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠAssert . assertTrue ( origin . is Mention As Web F inger Id ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Add Delete Origin () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġseed Ġ= ĠSystem . nano Time (). toString () ĊĠĠĠĠĠĠĠ Ġval Ġorigin Name Ġ= Ġ" sn Test $ seed " ĊĠĠĠĠĠĠĠ Ġval Ġorigin Type Ġ= ĠOrigin Type . GN US O CIAL ĊĠĠĠĠĠĠĠ Ġval Ġhost Or Url Ġ= Ġ" sn $ seed . example . org " ĊĠĠĠĠĠĠĠ Ġvar Ġis Ssl Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġval Ġallow Html Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġval Ġin Combined Global Search Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġval Ġin Combined Public Reload Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġval Ġorigin Inser ter Ġ= ĠDemo Origin Inser ter ( my Context ) ĊĠĠĠĠĠĠĠ Ġorigin Inser ter . create One Origin ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġorigin Type , Ġorigin Name , Ġhost Or Url , Ġis Ssl , ĠS sl Mode Enum . SECURE , Ġallow Html , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġin Combined Global Search , Ġin Combined Public Reload ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġorigin Inser ter . create One Origin ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġorigin Type , Ġorigin Name , Ġ" https ://" Ġ+ Ġhost Or Url ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ Ġ"/ some path ", Ġis Ssl , ĠS sl Mode Enum . IN SECURE , Ġallow Html , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġin Combined Global Search , Ġfalse ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġorigin Inser ter . create One Origin ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġorigin Type , Ġorigin Name , Ġ" https ://" Ġ+ Ġhost Or Url ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ Ġ"/ path with slash /", Ġis Ssl , ĠS sl Mode Enum . MIS CONFIGURE D , Ġallow Html , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse , Ġin Combined Public Reload ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġis Ssl Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġorigin Ġ= Ġorigin Inser ter . create One Origin ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġorigin Type , Ġorigin Name , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhost Or Url , Ġis Ssl , ĠS sl Mode Enum . SECURE , Ġallow Html , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġin Combined Global Search , Ġin Combined Public Reload ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals (" New Ġorigin Ġshould Ġhave Ġno Ġnotes ", Ġfalse , Ġorigin . has Notes ()) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals (" Origin Ġdeleted ", Ġtrue , ĠOrigin . Builder ( origin ). delete ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Permalink () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġorigin : ĠOrigin Ġ= Ġmy Context . orig ins . first OfType ( Origin Type . TW IT TER ) ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( Origin Type . TW IT TER , Ġorigin . origin Type ) ĊĠĠĠĠĠĠĠ Ġval Ġbody Ġ= Ġ" Post ing Ġto ĠTwitter Ġ" Ġ+ ĠDemo Data . demo Data . test Run Uid ĊĠĠĠĠĠĠĠ Ġval Ġnote Oid Ġ= Ġ" 2 5 7 8 9 0 9 8 4 5 0 2 3 " Ġ+ ĠDemo Data . demo Data . test Run Uid ĊĠĠĠĠĠĠĠ Ġval Ġactivity : ĠA Activity Ġ= ĠDemo Note Inser ter . Companion . add Note For Account ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDemo Data . demo Data . get My Account ( Demo Data . demo Data . twitter Test AccountName ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbody , Ġnote Oid , ĠDownload Status . LOADED ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġnote Id Ġ= Ġactivity . get Note (). note Id ĊĠĠĠĠĠĠĠ ĠAssert . assertNot Equals ( 0 , Ġnote Id ) ĊĠĠĠĠĠĠĠ Ġval ĠuserName Ġ= ĠMy Query . note Id To Username ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠNote Table . AUTHOR _ ID , Ġnote Id , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠActor In Timeline . USERNAME ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġper malink Ġ= Ġorigin . get Note Permalink ( note Id ) Ġ?: Ġthrow ĠIllegalStateException (" No Ġper malink ") ĊĠĠĠĠĠĠĠ Ġval Ġdesc Ġ= Ġ(" Permalink Ġof ĠTwitter Ġnote Ġ'" Ġ+ Ġnote Oid Ġ+ Ġ"' Ġby Ġ'" Ġ+ ĠuserName ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ Ġ"' Ġat Ġ" Ġ+ Ġorigin . toString () Ġ+ Ġ" Ġis Ġ" Ġ+ Ġper malink ) ĊĠĠĠĠĠĠĠ ĠAssert . assertTrue ( desc , Ġper malink . contains ("$ userName / status /$ note Oid ")) ĊĠĠĠĠĠĠĠ ĠAssert . assertFalse ( desc , Ġper malink . contains (" :// api .")) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Name Fix () Ġ{ ĊĠĠĠĠĠĠĠ Ġcheck One Name (" o . mrb log . nl ", Ġ" Ġo . Ġmrb log . Ġnl Ġ") ĊĠĠĠĠĠĠĠ Ġcheck One Name (" o . mr - blog . nl ", Ġ" Ġo . ĠĠ Ġmr - blog . Ġnl Ġ") ĊĠĠĠĠĠĠĠ Ġcheck One Name (" A qe el . s . instance ", Ġ" A qe el 's Ġinstance ") ĊĠĠĠĠĠĠĠ Ġcheck One Name (" BK A . li . Public . GS ", Ġ" BK A . li ĠPublic ĠGS ") ĊĠĠĠĠĠĠĠ Ġcheck One Name (" Qu itter . E span ol ", Ġ" Qu itter ĠE spa Ã± ol ") ĊĠĠĠĠĠĠĠ Ġcheck One Name (" This . is . a . f unky . String ", Ġ" T Ä ¥ Ã¯ Å Ŀ ĠÄ © Å¡ ĠÃ ¢ Ġf Å¯ ÅĪ Ä · Å · ĠÅ ł Å¥ Å ķ Ä Ń ÅĦ Ä ¡ ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcheck One Name ( out : ĠString ?, Ġ` in `: ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( out , ĠOrigin . Builder ( my Context , ĠOrigin Type . GN US O CIAL ). setName (` in `). build (). name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Host Fix () Ġ{ ĊĠĠĠĠĠĠĠ Ġcheck One Host (" https :// o . mrb log . nl ", Ġ" Ġo . Ġmr Blog . Ġnl Ġ", Ġtrue ) ĊĠĠĠĠĠĠĠ Ġcheck One Host (" http :// o . mrb log . nl ", Ġ" Ġo . ĠĠ Ġmrb log . Ġnl Ġ", Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcheck One Host ( out : ĠString ?, Ġin Host : ĠString ?, Ġssl : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout , ĠOrigin . Builder ( my Context , ĠOrigin Type . GN US O CIAL ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Host Or Url ( in Host ). set Ssl ( ssl ). build (). url ?. to External Form () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Username IsValid () Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġorigin : ĠOrigin Ġ= Ġmy Context . orig ins . from Name ( Demo Data . demo Data . gn us ocial Test Origin Name ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ"", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some User .", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some User Ġ", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some User ", Ġtrue ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some . user ", Ġtrue ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some . user / G nu Social ", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some @ user ", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġorigin Ġ= Ġmy Context . orig ins . from Name ( Demo Data . demo Data . pump io Origin Name ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ"", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some User .", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some User Ġ", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some User ", Ġtrue ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some . user ", Ġtrue ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some . user @ example . com ", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" t 1 3 1 t @ ident i . ca / Pump Io ", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some @ example . com .", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some @ example . com ", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" some @ user ", Ġfalse ) ĊĠĠĠĠĠĠĠ Ġcheck Username IsValid ( origin , Ġ" And Status @ data most . com ", Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcheck Username IsValid ( origin : ĠOrigin , Ġusername : ĠString ?, Ġvalid : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Username Ġ'" Ġ+ Ġusername Ġ+ Ġ"' Ġ" Ġ+ Ġif Ġ( valid ) Ġ" is Ġnot Ġvalid " Ġelse Ġ" is Ġvalid ", Ġvalid , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġorigin . is Username Valid ( username ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ After ĊĠĠĠ Ġfun ĠtearDown () Ġ{ ĊĠĠĠĠĠĠĠ Ġmy Context . set Expired Ġ{ Ġthis . toString () Ġ} ĊĠĠĠ Ġ} Ċ } Ċ