/* Ċ Ġ* ĠCopyright Ġ 2 0 2 1 ĠOn a ĠSystems , ĠInc Ċ Ġ* Ċ Ġ* Ġ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 . smart register . fhir core . engine . ui . components Ċ Ċ import Ġandroid . app . Application Ċ import Ġandroidx . compose . ui . test . assertIs Displayed Ċ import Ġandroidx . compose . ui . test . junit 4 . create Compose Rule Ċ import Ġandroidx . compose . ui . test . on Node With Tag Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġandroidx . test . core . app . Application Provider Ċ import Ġio . mock k . every Ċ import Ġio . mock k . mock k Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Rule Ċ import Ġorg . junit . Test Ċ import Ġorg . smart register . fhir core . engine . configuration . view . login View Configuration Of Ċ import Ġorg . smart register . fhir core . engine . ro bo lectric . Ro bo lectric Test Ċ import Ġorg . smart register . fhir core . engine . ui . login . APP _ LOG O _ TAG Ċ import Ġorg . smart register . fhir core . engine . ui . login . Login Screen Ċ import Ġorg . smart register . fhir core . engine . ui . login . Login ViewModel Ċ Ċ class ĠLogin Screen With Logo Test Ġ: ĠRo bo lectric Test () Ġ{ ĊĊĠ Ġ@ get : Rule Ġval Ġcompose Rule Ġ= Ġcreate Compose Rule () ĊĊĠ Ġprivate Ġlateinit Ġvar Ġlogin ViewModel With Logo : ĠLogin ViewModel ĊĠ Ġprivate Ġval Ġapp Ġ= ĠApplication Provider . getApplicationContext < Application >() ĊĠ Ġprivate Ġval Ġusername Ġ= ĠMutable LiveData ("") ĊĠ Ġprivate Ġval Ġpassword Ġ= ĠMutable LiveData ("") ĊĠ Ġprivate Ġval Ġlogin Error Ġ= ĠMutable LiveData ("") ĊĠ Ġprivate Ġval Ġshow ProgressBar Ġ= ĠMutable LiveData ( false ) ĊĠ Ġprivate Ġval Ġlogin Config Ġ= Ġlogin View Configuration Of () ĊĊĠ Ġ@ Before ĊĠ Ġfun ĠsetUp () Ġ{ ĊĠĠĠ Ġlogin Config . show Logo Ġ= Ġtrue ĊĠĠĠ Ġlogin ViewModel With Logo Ġ= ĊĠĠĠĠĠ Ġmock k Ġ{ ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġlogin View Configuration Ġ} Ġreturns ĠMutable LiveData ( login Config ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġusername Ġ} Ġreturns Ġthis @ Login Screen With Logo Test . username ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġpassword Ġ} Ġreturns Ġthis @ Login Screen With Logo Test . password ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġlogin Error Ġ} Ġreturns Ġthis @ Login Screen With Logo Test . login Error ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġshow ProgressBar Ġ} Ġreturns Ġthis @ Login Screen With Logo Test . show ProgressBar ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġapp Logo Resource File Ġ} Ġreturns Ġ" ic _ launcher " ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġon Username Updated ( any ()) Ġ} Ġanswers ĊĠĠĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Login Screen With Logo Test . username . value Ġ= Ġfirst Arg () ĊĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġon Password Updated ( any ()) Ġ} Ġanswers ĊĠĠĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Login Screen With Logo Test . password . value Ġ= Ġfirst Arg () ĊĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġattempt Remote Login () Ġ} Ġreturns ĠUnit ĊĠĠĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ@ Test ĊĠ Ġfun Ġtest Login Screen Components With Logo () Ġ{ ĊĊĠĠĠ Ġcompose Rule . setContent Ġ{ ĠLogin Screen ( login ViewModel With Logo ) Ġ} ĊĊĠĠĠ Ġ// Ġverify ing Ġapp Ġlogo Ġproperties ĊĠĠĠ Ġcompose Rule . on Node With Tag ( APP _ LOG O _ TAG ). assert Exists () ĊĠĠĠ Ġcompose Rule . on Node With Tag ( APP _ LOG O _ TAG ). assertIs Displayed () ĊĠ Ġ} Ċ } Ċ