package Ġview model Ċ Ċ import Ġexpect . Basic Assertion Ċ import Ġkotlin . test . assertTrue Ċ Ċ class ĠViewModel State Expectation < S >( ĊĠĠĠ Ġoverride Ġval Ġvalue : ĠList < S > Ċ ) Ġ: ĠBasic Assertion < List < S >>( value ), ĠViewModel State Assertion < S > Ġ{ ĊĠĠĠ Ġinline Ġfun Ġ< re ified ĠE > Ġto Be In (): ĠE Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstate Ġ= Ġvalue . last () ĊĠĠĠĠĠĠĠ ĠassertTrue ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠ ĠExpected ĠState Ġ: Ġ${ E :: class . simple Name } ĊĠĠĠĠĠĠĠ ĠActual ĠState ĠĠ Ġ: Ġ$ state ĊĠĠĠĠĠĠĠ Ġ================================= = ĊĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠ Ġ""" . trim Indent () ĊĠĠĠĠĠĠĠ Ġ) Ġ{ Ġstate Ġis ĠE Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġstate Ġas ĠE ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinline Ġfun Ġ< re ified ĠL , Ġre ified ĠR > Ġto Be In Either (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstate Ġ= Ġvalue . last () ĊĠĠĠĠĠĠĠ ĠassertTrue ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ""" ĊĠĠĠĠĊĠĠĠ ĠExpected ĠStates Ġ: Ġ[ ${ L :: class . simple Name } Ġ| Ġ${ R :: class . simple Name }] ĊĠĠĠ ĠActual ĠState ĠĠĠ Ġ: Ġ${ state !! :: class . simple Name } ĊĠĠĠ Ġ================================================= ============ ĊĊĠĠĠ Ġ""" . trim Indent () ĊĠĠĠĠĠĠĠ Ġ) Ġ{ Ġstate Ġis ĠL Ġ|| Ġstate Ġis ĠR Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} Ċ }