package Ġno . bak ken bae ck . p orch p ir ate prot ector Ċ Ċ import Ġandroidx . test . core . app . Activity Scenario . launch Ċ import Ġandroidx . test . ext . junit . runners . Android JUnit 4 Ċ import Ġandroidx . test . filters . Large Test Ċ import Ġno . bak ken bae ck . p orch p ir ate prot ector . activity . MainActivity Ċ import Ġno . bak ken bae ck . p orch p ir ate prot ector . manager . KeyStore Manager Ċ import Ġno . bak ken bae ck . p orch p ir ate prot ector . manager . SharedPreferences Manager Ċ import Ġorg . junit . Assert .* Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . runner . RunWith Ċ Ċ @ RunWith ( Android JUnit 4 :: class ) Ċ @ Large Test Ċ class ĠKey Store Manager Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġencrypt ing And Decrypt ing Token () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġscenario Ġ= Ġlaunch < MainActivity >( MainActivity :: class . java ) ĊĠĠĠĠĠĠĠ Ġscenario . on Activity Ġ{ Ġactivity Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmanager Ġ= ĠKey Store Manager ( activity ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmanager . clear Token String () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfake Token Ġ= Ġ" I Ġam Ġa ĠFA KE ĠTOKEN " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmanager . store Token String ( fake Token ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠDid Ġthe Ġtoken Ġget Ġencrypted Ġand Ġstored Ġin Ġfake Ġpreferences ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġprefs Manager Ġ= ĠSharedPreferences Manager ( activity ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstored String Ġ= Ġprefs Manager . retrieve String ( SharedPreferences Manager . KeyName . Encrypted Token ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNotNull ( stored String ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġassert Not Equals ( fake Token , Ġstored String ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠWhen Ġwe Ġattempt Ġto Ġfetch Ġthe Ġtoken Ġfrom Ġthe Ġmanager , Ġis Ġit Ġwhat Ġit Ġshould Ġbe ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfetched Token Ġ= Ġmanager . fetch Token String () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNotNull ( f etched Token ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( fake Token , Ġfetched Token ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠWhen Ġwe Ġclear Ġthe Ġtoken , Ġdoes Ġit Ġactually Ġgo Ġaway ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmanager . clear Token String () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġref etched Token Ġ= Ġmanager . fetch Token String () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNull ( ref etched Token ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }