package Ġcom . jetbrains . rd . framework . test . cases . contexts Ċ Ċ import Ġcom . jetbrains . rd . framework . Framework Marshall ers Ċ import Ġcom . jetbrains . rd . framework . Rd Context Ċ import Ġcom . jetbrains . rd . framework . impl . Rd Signal Ċ import Ġcom . jetbrains . rd . framework . test . util . Rd Framework TestBase Ċ import Ġcom . jetbrains . rd . util . lifetime . Lifetime Ċ import Ġorg . junit . experimental . the ories . DataPoint Ċ import Ġorg . junit . experimental . the ories . The ories Ċ import Ġorg . junit . experimental . the ories . Theory Ċ import Ġorg . junit . runner . RunWith Ċ Ċ @ RunWith ( The ories :: class ) Ċ class ĠContext s Test Ġ: ĠR d Framework TestBase () Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Field ĊĠĠĠĠĠĠĠ Ġ@ DataPoint ĊĠĠĠĠĠĠĠ Ġval Ġtrue Value Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ@ Jvm Field ĊĠĠĠĠĠĠĠ Ġ@ DataPoint ĊĠĠĠĠĠĠĠ Ġval Ġfalse Value Ġ= Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠTest Key He avy Ġ: ĠR d Context < String >(" test - key ", Ġtrue , ĠFramework Marshall ers . String ) ĊĠĠĠ Ġobject ĠTest Key Light Ġ: ĠR d Context < String >(" test - key ", Ġfalse , ĠFramework Marshall ers . String ) ĊĊĠĠĠ Ġ@ Theory ĊĠĠĠ Ġfun Ġtest Late Add ( heavy : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln (" He avy : Ġ$ heavy ") ĊĠĠĠĠĠĠĠ Ġval Ġkey Ġ= Ġif ( heavy ) ĠTest Key He avy Ġelse ĠTest Key Light ĊĊĠĠĠĠĠĠĠ Ġval Ġserver Signal Ġ= ĠR d Signal < String >() ĊĠĠĠĠĠĠĠ Ġval Ġclient Signal Ġ= ĠR d Signal < String >() ĊĊĠĠĠĠĠĠĠ Ġserver Protocol . bind Static ( server Signal , Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġclient Protocol . bind Static ( client Signal , Ġ 1 ) ĊĊĠĠĠĠĠĠĠ Ġserver Protocol . contexts . register Context ( key ) ĊĊĠĠĠĠĠĠĠ Ġkey . value Ġ= Ġ" 1 " ĊĊĠĠĠĠĠĠĠ ĠL ifetime . using Ġ{ Ġlt Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġfired Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient Signal . adv ise ( lt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert ( key . value Ġ== Ġ" 1 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfired Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver Signal . fire ("") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġassert ( f ired ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġclient Protocol . contexts . register Context ( key ) ĊĊĠĠĠĠĠĠĠ ĠL ifetime . using Ġ{ Ġlt Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġfired Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient Signal . adv ise ( lt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert ( key . value Ġ== Ġ" 1 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfired Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver Signal . fire ("") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġassert ( f ired ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġassert ( key . value Ġ== Ġ" 1 ") ĊĊĠĠĠĠĠĠĠ ĠL ifetime . using Ġ{ Ġlt Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġfired Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver Signal . adv ise ( lt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassert ( key . value Ġ== Ġ" 1 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfired Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient Signal . fire ("") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġassert ( f ired ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġassert ( key . value Ġ== Ġ" 1 ") ĊĠĠĠ Ġ} Ċ }