package Ġcom . che ise _ proj . local _ source Ċ Ċ import Ġcom . che ise _ proj . local _ source . db . dao . Files Dao Ċ import Ġcom . che ise _ proj . local _ source . db . dao . Message Dao Ċ import Ġcom . che ise _ proj . local _ source . db . dao . People Dao Ċ import Ġcom . che ise _ proj . local _ source . db . dao . User Dao Ċ import Ġcom . che ise _ proj . local _ source . extensions .* Ċ import Ġcom . che ise _ proj . local _ source . utils . Test Files Generator Ċ import Ġcom . che ise _ proj . local _ source . utils . Test Message Generator Ċ import Ġcom . che ise _ proj . local _ source . utils . Test People Generator Ċ import Ġcom . che ise _ proj . local _ source . utils . Test User Generator Ċ import Ġio . reactivex . Observable Ċ import Ġio . reactivex . Single Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . runner . RunWith Ċ import Ġorg . junit . runners . JUnit 4 Ċ import Ġorg . mockito . Mock Ċ import Ġorg . mockito . Mockito Ċ import Ġorg . mockito . Mockito . times Ċ import Ġorg . mockito . Mockito Annotations Ċ Ċ @ RunWith ( JUnit 4 :: class ) Ċ class ĠLocal Source Impl Test Ġ{ ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġlocal Source Impl : ĠLocal Source Impl ĊĊĠĠĠ Ġ@ Mock ĊĠĠĠ Ġlateinit Ġvar Ġuser Dao : ĠUser Dao ĊĊĠĠĠ Ġ@ Mock ĊĠĠĠ Ġlateinit Ġvar Ġmessage Dao : ĠMessage Dao ĊĊĠĠĠ Ġ@ Mock ĊĠĠĠ Ġlateinit Ġvar Ġfiles Dao : ĠFiles Dao ĊĊĠĠĠ Ġ@ Mock ĊĠĠĠ Ġlateinit Ġvar Ġpeople Dao : ĠPeople Dao ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ ĠMockito Annotations . init Mocks ( this ) ĊĊĠĠĠĠĠĠĠ Ġlocal Source Impl Ġ= ĠLocal Source Impl ( user Dao , Ġmessage Dao , Ġfiles Dao , Ġpeople Dao ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// region ĠDELETE ĠFILE S ĊĊĠĠĠ Ġ// region ĠREPORT ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Delete Ġreport Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . delete Report ( IDENTIFIER ) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). delete Report ById entifier ( IDENTIFIER ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// endregion ĊĊĠĠĠ Ġ// region ĠASS IGN MENT ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Delete Ġassignment Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . delete Assignment ( IDENTIFIER ) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). delete Assignment ById entifier ( IDENTIFIER ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// endregion ĊĊĠĠĠ Ġ// endregion ĊĊĠĠĠ Ġ// region Ġpeople ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġpeople Ġlist Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest People Generator . get People () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( people Dao . get People List ()). thenReturn ( Observable . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get People List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Local List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġpeople Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest People Generator . get People ()[ 0 ] ĊĠĠĠĠĠĠĠ ĠMockito .` when `( people Dao . get People ( IDENTIFIER )). thenReturn ( Single . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get People ( IDENTIFIER ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Data () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Save Ġpeople Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest People Generator . get People () ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . save People ( actual . as Local List ()) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( people Dao , Ġtimes ( 1 )). clear And Insert People ( actual ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// endregion ĊĊĠĠĠ Ġ// region ĠV IDE O ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġall Ġvideos Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . get Videos () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . get Videos ()). thenReturn ( Observable . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get Videos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Video Local List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). get Videos () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġvideo Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . get Video () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . get Video ( IDENTIFIER )). thenReturn ( Single . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get Video ( IDENTIFIER ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Video Data () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). get Video ( IDENTIFIER ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Save Ġvideos Ġto Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvideo Ġ= ĠTest Files Generator . get Videos () ĊĠĠĠĠĠĠĠ ĠMockito . do Nothing (). ` when `( files Dao ). clear And Insert Video ( video ) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . save Video ( video . as Video Local List ()) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). clear And Insert Video ( video ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// endregion ĊĊĊĠĠĠ Ġ// region ĠB ILL ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġall Ġb ills Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . getB ills () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . getB ills ()). thenReturn ( Observable . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . getB ills () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Bill Local List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). getB ills () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġbill Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . get Bill () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . get Bill ( IDENTIFIER )). thenReturn ( Single . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get Bill ( IDENTIFIER ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Bill Data () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). get Bill ( IDENTIFIER ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Save Ġb ills Ġto Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbill Ġ= ĠTest Files Generator . getB ills () ĊĠĠĠĠĠĠĠ ĠMockito . do Nothing (). ` when `( files Dao ). clear And Insert Bill ( bill ) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . save Bill ( bill . as Bill Local List ()) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). clear And Insert Bill ( bill ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// endregion ĊĊĠĠĠ Ġ// region ĠTIME TABLE ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġall Ġtime tables Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . getTime Tables () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . getTime Tables ()). thenReturn ( Observable . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . getTime Tables () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Time Table Local List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). getTime Tables () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġtime table Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . getTime Table () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . getTime Table ( IDENTIFIER )). thenReturn ( Single . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . getTime Table ( IDENTIFIER ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Time TableData () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). getTime Table ( IDENTIFIER ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Save Ġtime table Ġto Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtime table Ġ= ĠTest Files Generator . getTime Tables () ĊĠĠĠĠĠĠĠ ĠMockito . do Nothing (). ` when `( files Dao ). clear And Insert Time Table ( timetable ) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . save Time Table ( timetable . as Time Table Local List ()) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). clear And Insert Time Table ( timetable ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// endregion ĊĊĊĠĠĠ Ġ// region ĠREPORT ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġall Ġreports Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . get Reports () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . get Reports ()). thenReturn ( Observable . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get Reports () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Report Local List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). get Reports () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġreport Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . get Report () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . get Report ( IDENTIFIER )). thenReturn ( Single . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get Report ( IDENTIFIER ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Report Data () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). get Report ( IDENTIFIER ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Save Ġreport Ġto Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġreport Ġ= ĠTest Files Generator . get Reports () ĊĠĠĠĠĠĠĠ ĠMockito . do Nothing (). ` when `( files Dao ). clear And Insert Report ( report ) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . save Report ( report . as Report Local List ()) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). clear And Insert Report ( report ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// endregion ĊĊĊĠĠĠ Ġ// region ĠASS IGN MENT ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġall Ġassignment Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . get Assignments () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . get Assignments ()). thenReturn ( Observable . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get Assignments () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Assignment Local List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). get Assignments () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġassignment Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . get Assignment () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . get Assignment ( IDENTIFIER )). thenReturn ( Single . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get Assignment ( IDENTIFIER ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Assignment Data () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). get Assignment ( IDENTIFIER ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Save Ġassignment Ġto Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġassignment Ġ= ĠTest Files Generator . get Assignments () ĊĠĠĠĠĠĠĠ ĠMockito . do Nothing (). ` when `( files Dao ). clear And Insert Assignment ( assignment ) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . save Assignment ( assignment . as Assignment Local List ()) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). clear And Insert Assignment ( assignment ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// endregion ĊĊĊĠĠĠ Ġ// region ĠC IRC ULAR ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġall Ġcircular Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . getC irc ular s () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . getC irc ular s ()). thenReturn ( Observable . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . getC irc ular s () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Circular Local List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). getC irc ular s () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġcircular Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Files Generator . getC irc ular () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( files Dao . getC irc ular ( IDENTIFIER )). thenReturn ( Single . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . getC irc ular ( IDENTIFIER ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Circular Data () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). getC irc ular ( IDENTIFIER ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Save Ġcircular Ġto Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcircular Ġ= ĠTest Files Generator . getC irc ular s () ĊĠĠĠĠĠĠĠ ĠMockito . do Nothing (). ` when `( files Dao ). clear And Insert Circular ( circular ) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . save Circular ( circular . as Circular Local List ()) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( files Dao , Ġtimes ( 1 )). clear And Insert Circular ( circular ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// endregion ĊĊĠĠĠ Ġ// region ĠMESSAGE ĊĠĠĠ Ġ// compl aint ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġall Ġcompl aints Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Message Generator . get Comp l aint () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( message Dao . get Comp l aints ()). thenReturn ( Observable . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get Comp l aints (). test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as DataList () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( message Dao , Ġtimes ( 1 )). get Comp l aints () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġcompl aint Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Message Generator . get Comp l aint ()[ 0 ] ĊĠĠĠĠĠĠĠ ĠMockito .` when `( message Dao . get Comp l aint ( MESSAGE _ IDENTIFIER . toString ())) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( Single . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get Comp l aint ( MESSAGE _ IDENTIFIER . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Data () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( message Dao , Ġtimes ( 1 )). get Comp l aint ( MESSAGE _ IDENTIFIER . toString ()) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Save Ġcompl aint Ġto Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Message Generator . get Comp l aint () ĊĠĠĠĠĠĠĠ ĠMockito . do Nothing (). ` when `( message Dao ). clear And Insert Comp l aints ( actual ) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . save Comp l aint ( actual . as DataList ()) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( message Dao , Ġtimes ( 1 )). clear And Insert Comp l aints ( actual ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// message ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġall Ġmessages Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Message Generator . get Messages () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( message Dao . get Messages ()). thenReturn ( Observable . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get Messages (). test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as DataList () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( message Dao , Ġtimes ( 1 )). get Messages () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġmessage Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Message Generator . get Messages ()[ 0 ] ĊĠĠĠĠĠĠĠ ĠMockito .` when `( message Dao . getMessage ( MESSAGE _ IDENTIFIER )). thenReturn ( Single . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . getMessage ( MESSAGE _ IDENTIFIER ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Data () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( message Dao , Ġtimes ( 1 )). getMessage ( MESSAGE _ IDENTIFIER ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Save Ġmessages Ġto Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest Message Generator . get Messages () ĊĠĠĠĠĠĠĠ ĠMockito . do Nothing (). ` when `( message Dao ). clear And Insert Messages ( actual ) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . save Messages ( actual . as DataList ()) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( message Dao , Ġtimes ( 1 )). clear And Insert Messages ( actual ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// endregion ĊĊĊĠĠĠ Ġ// region ĠUSER ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġuser Ġfrom Ġlocal Ġwith Ġcredentials Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest User Generator . user () ĊĠĠĠĠĠĠĠ Ġwith ( actual ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMockito .` when `( user Dao . getUser ( username , Ġpassword )). thenReturn ( Single . just ( this )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlocal Source Impl . getUser ( username , Ġpassword ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Data () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMockito . verify ( user Dao , Ġtimes ( 1 )). getUser ( username , Ġpassword ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Save Ġuser Ġto Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest User Generator . user () ĊĠĠĠĠĠĠĠ ĠMockito . do Nothing (). ` when `( user Dao ). save User ( actual ) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . save User ( actual . as Data ()) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( user Dao , Ġtimes ( 1 )). clear And Insert User ( actual ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Get Ġuser Ġprofile Ġfrom Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest User Generator . get Profile () ĊĠĠĠĠĠĠĠ ĠMockito .` when `( user Dao . get Profile ( USER _ IDENTIFIER )). thenReturn ( Single . just ( actual )) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . get Profile ( USER _ IDENTIFIER ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Sub scribed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== Ġactual . as Data () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠ ĠMockito . verify ( user Dao , Ġtimes ( 1 )). get Profile ( USER _ IDENTIFIER ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Save Ġuser Ġprofile Ġto Ġlocal Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactual Ġ= ĠTest User Generator . get Profile () ĊĠĠĠĠĠĠĠ ĠMockito . do Nothing (). ` when `( user Dao ). save Profile ( actual ) ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . save Profile ( actual . as Data ()) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( user Dao , Ġtimes ( 1 )). save Profile ( actual ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Update Ġlocal Ġuser Ġpassword Ġsuccess `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġnew Password Ġ= Ġ" 1 2 3 4 5 " ĊĠĠĠĠĠĠĠ Ġlocal Source Impl . update Password ( IDENTIFIER , Ġnew Password ) ĊĠĠĠĠĠĠĠ ĠMockito . verify ( user Dao , Ġtimes ( 1 )). update Password ( IDENTIFIER , Ġnew Password ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// endregion ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠIDENT IFIER : ĠString Ġ= Ġ" 1 " ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠMESSAGE _ IDENTIFIER : ĠInt Ġ= Ġ 1 ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠUSER _ IDENTIFIER : ĠString Ġ= Ġ" test Ġidentifier " ĊĠĠĠ Ġ} Ċ }