package Ġio . android al atan . datastore . preference . adapter . rx Ċ Ċ import Ġio . android al atan . datastore . preference . in memory . InMemory Preference Ċ import Ġio . android al atan . datastore . preference . inv oc ator . Value Observer Impl Ċ import Ġio . reactivex . rx java 3 . core . Comp letable Ċ import Ġio . reactivex . rx java 3 . core . Maybe Ċ import Ġio . reactivex . rx java 3 . core . Observable Ċ import Ġio . reactivex . rx java 3 . core . Single Ċ import Ġio . reactivex . rx java 3 . schedul ers . Schedulers Ċ import Ġorg . junit . jupiter . api . Assertions Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ class ĠRx Set Adapter Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġset Adapter Ġ= ĠRx Set Adapter ( Schedulers . tr amp oline ()) ĊĊĠĠĠ Ġprivate Ġval Ġpreference Ġ= ĠIn Memory Preference () ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġacceptable () Ġ{ ĊĠĠĠĠĠĠĠ ĠAssertions . assertTrue ( setAdapter . accept able ( Single :: class . java )) ĊĠĠĠĠĠĠĠ ĠAssertions . assertTrue ( setAdapter . accept able ( Maybe :: class . java )) ĊĠĠĠĠĠĠĠ ĠAssertions . assertTrue ( setAdapter . accept able ( Observable :: class . java )) ĊĠĠĠĠĠĠĠ ĠAssertions . assertTrue ( setAdapter . accept able ( Comp letable :: class . java )) ĊĊĠĠĠĠĠĠĠ ĠAssertions . assertFalse ( setAdapter . accept able ( Boolean :: class . java )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` adapt Ġsingle `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ( setAdapter . adapt ( Single :: class . java , Ġpreference , ĠValue Observer Impl (), ĠKEY , Ġvalue ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . put Boolean ( KEY , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply () ĊĠĠĠĠĠĠĠ Ġ} Ġas ĠSingle < Boolean >) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value ( value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert No Errors () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. dispose () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` adapt Ġmaybe `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ( setAdapter . adapt ( Maybe :: class . java , Ġpreference , ĠValue Observer Impl (), ĠKEY , Ġvalue ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . put Boolean ( KEY , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply () ĊĠĠĠĠĠĠĠ Ġ} Ġas ĠMaybe < Boolean >) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value ( value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert No Errors () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. dispose () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` adapt Ġobservable `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ( setAdapter . adapt ( Observable :: class . java , Ġpreference , ĠValue Observer Impl (), ĠKEY , Ġvalue ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . put Boolean ( KEY , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply () ĊĠĠĠĠĠĠĠ Ġ} Ġas ĠObservable < Boolean >) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value Count ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Value ( value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert No Errors () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. dispose () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` adapt Ġcomplet able `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ( setAdapter . adapt ( Comp letable :: class . java , Ġpreference , ĠValue Observer Impl (), ĠKEY , Ġvalue ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . put Boolean ( KEY , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply () ĊĠĠĠĠĠĠĠ Ġ} Ġas ĠComp letable ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert No Values () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert No Errors () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. assert Complete () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. dispose () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠKEY Ġ= Ġ" key - 1 " ĊĠĠĠ Ġ} Ċ }