package Ġcom . just ai . ja ic f . test . context Ċ Ċ import Ġcom . just ai . ja ic f . context . Action Context Ċ import Ġcom . just ai . ja ic f . context . Process Context Ċ Ċ /** Ċ Ġ* ĠA Ġ[ Action Context ] Ġsubclass Ġused Ġduring Ġthe Ġunit Ġtest Ġexecution . Ċ Ġ* ĠEvery Ġaction Ġblock Ġof Ġthe Ġscenario Ġwill Ġbe Ġexecuted Ġin Ġthis Ġcontext Ġduring Ġthe Ġunit Ġtest . Ċ Ġ* ĠThis Ġclass Ġcontains Ġsome Ġfunctions Ġthat Ġdetermines Ġa Ġsmart Ġrandom Ġnumbers Ġgeneration Ġand Ġothers Ġhelpers . Ċ Ġ*/ Ċ data Ġclass ĠTest Action Context ( ĊĠĠĠ Ġprivate Ġval Ġprocess Context : ĠProcess Context Ċ ) Ġ: ĠAction Context ( ĊĠĠĠ Ġcontext Ġ= Ġprocess Context . bot Context , ĊĠĠĠ Ġactiv ator Ġ= Ġprocess Context . activation Context . activation . context , ĊĠĠĠ Ġrequest Ġ= Ġprocess Context . request , ĊĠĠĠ Ġre actions Ġ= Ġprocess Context . reactions Ċ ) Ġ{ ĊĠĠĠ Ġprivate Ġval Ġrequest Context Ġ= Ġprocess Context . request Context Ġas ĠTest RequestContext ĊĊĠĠĠ Ġinternal Ġfun Ġnext Random Int () Ġ= Ġrequest Context . random Numbers . poll () Ġ?: Ġ 0 ĊĠĠĠ Ġoverride Ġfun Ġrandom ( min : ĠInt , Ġmax : ĠInt ) Ġ= Ġmin ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠFinds Ġa Ġnamed Ġvariable Ġpassed Ġfrom Ġtest . ĊĠĠĠĠ Ġ* Ġ@ param Ġname Ġa Ġname Ġof Ġthe Ġvariable Ġto Ġfind ĊĠĠĠĠ Ġ* Ġ@ return Ġvariable Ġvalue Ġor Ġnull Ġif Ġnothing Ġwas Ġfound ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġget Var ( name : ĠString ) Ġ= Ġrequest Context . variables [ name ] Ċ } Ċ Ċ /** Ċ Ġ* ĠIndicates Ġif Ġscenario Ġis Ġrunning Ġin Ġtest Ġmode Ċ Ġ*/ Ċ fun ĠAction Context . is Test Mode () Ġ= Ġthis Ġis ĠTest Action Context Ċ Ċ /** Ċ Ġ* ĠRuns Ġthis Ġblock Ġof Ġcode Ġonly Ġif Ġthe Ġscenario Ġis Ġrunning Ġin Ġtest Ġmode Ċ Ġ* Ġ@ param Ġblock Ġa Ġblock Ġof Ġcode Ġto Ġbe Ġran Ġin Ġtest Ġmode Ġonly Ċ Ġ*/ Ċ fun Ġ< T > ĠAction Context . run In Test ( block : ĠTest Action Context . () Ġ-> ĠT ) Ġ= Ġwhen Ġ( this ) Ġ{ ĊĠĠĠ Ġis ĠTest Action Context Ġ-> Ġblock . invoke ( this ) ĊĠĠĠ Ġelse Ġ-> Ġnull Ċ } Ċ