public void Transition1_6_RRTest() { using (var countDown = new CountdownEvent(1)) { foreach (var a in TestDef.Constant.DoubleTriggerButtons) { countDown.Reset(); var gestureDef = new List <IfButtonGestureDefinition>() { new IfButtonGestureDefinition( (ctx) => { return(true); }, a as DSL.Def.AcceptableInIfButtonClause, (ctx) => { Assert.Fail(); }, (ctx) => { Assert.Fail(); }, (ctx) => { countDown.Signal(); }) }; using (var Global = new StateGlobal()) { var S0 = new State0(Global, new List <GestureDefinition>()); var S1 = new State1(Global, S0, ctx, Helper.Convert(a as DSL.Def.AcceptableInOnClause), new List <OnButtonGestureDefinition>(), gestureDef); var res = S1.Reset(); Assert.IsTrue(res is State0); Assert.IsTrue(Global.IgnoreNext.Contains(Helper.Convert(a as DSL.Def.AcceptableInOnClause).GetPair())); Assert.IsTrue(countDown.Wait(50)); } } } }