/* Ċ Ġ* ĠCopyright ĠÂ© Ġ 2 0 2 0 ĠN HS X . ĠAll Ġrights Ġreserved . Ċ Ġ*/ Ċ Ċ package Ġuk . n hs . n hs x . sonar . android . app . status Ċ Ċ import Ġorg . assertj . core . api . Assertions . assertThat Ċ import Ġorg . joda . time . DateTime Ċ import Ġorg . junit . Test Ċ import Ġuk . n hs . n hs x . sonar . android . app . inbox . Test Info Ċ import Ġuk . n hs . n hs x . sonar . android . app . inbox . TestResult Ċ Ċ class ĠUser State Transitions On Invalid Result Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġtransitions Ġ= ĠUser State Transitions () ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` default Ġremains Ġdefault `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtest Info Ġ= ĠTest Info ( TestResult . INVALID , ĠDateTime . now ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġstate Ġ= Ġtransitions . transition On TestResult ( Default State , Ġtest Info ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( state ). isEqualTo ( Default State ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sy mptom atic Ġremains Ġsy mptom atic `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsy mptom atic Ġ= Ġbuild Sy mptom atic State () ĊĠĠĠĠĠĠĠ Ġval Ġtest Info Ġ= ĠTest Info ( TestResult . INVALID , ĠDateTime . now ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġstate Ġ= Ġtransitions . transition On TestResult ( sy mptom atic , Ġtest Info ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( state ). isEqualTo ( sy mptom atic ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` positive Ġremains Ġpositive `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpositive Ġ= Ġbuild Positive State () ĊĠĠĠĠĠĠĠ Ġval Ġtest Info Ġ= ĠTest Info ( TestResult . INVALID , ĠDateTime . now ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġstate Ġ= Ġtransitions . transition On TestResult ( positive , Ġtest Info ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( state ). isEqualTo ( positive ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` ex posed Ġremains Ġexposed `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexposed Ġ= Ġbuild Ex posed State () ĊĠĠĠĠĠĠĠ Ġval Ġtest Info Ġ= ĠTest Info ( TestResult . INVALID , ĠDateTime . now ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġstate Ġ= Ġtransitions . transition On TestResult ( ex posed , Ġtest Info ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( state ). isEqualTo ( ex posed ) ĊĠĠĠ Ġ} Ċ } Ċ