public override Test.Framework.TestResult Run() { DDS.GuardCondition condition; DDS.WaitSet waitset; Test.Framework.TestResult result; Condition1.GuardConditionWaitset threadedWaitset; DDS.ReturnCode rc; string expResult = "StatusCondition test succeeded."; result = new Test.Framework.TestResult(expResult, string.Empty, Test.Framework.TestVerdict .Pass, Test.Framework.TestVerdict.Fail); condition = new DDS.GuardCondition(); waitset = new DDS.WaitSet(); waitset.AttachCondition(condition); DDS.ICondition[] activeConditions = new DDS.ICondition[0]; rc = waitset.Wait(ref activeConditions, new DDS.Duration(3, 0)); if (rc != DDS.ReturnCode.Timeout) { result.Result = "WaitSet.Wait failed."; return(result); } if (activeConditions.Length > 0) { result.Result = "WaitSet.Wait returned condition where it shouldn't."; return(result); } threadedWaitset = new test.sacs.Condition1.GuardConditionWaitset(this, waitset); threadedWaitset.Start(); condition.SetTriggerValue(true); try { threadedWaitset.Join(); } catch (System.Exception e) { System.Console.WriteLine(e); } if (!threadedWaitset.Succeeded()) { result.Result = "GuardCondition trigger does not work properly."; return(result); } result.Result = expResult; result.Verdict = Test.Framework.TestVerdict.Pass; return(result); }
public override Test.Framework.TestResult Run() { DDS.GuardCondition condition; DDS.WaitSet waitset; Test.Framework.TestResult result; Condition1.GuardConditionWaitset threadedWaitset; DDS.ReturnCode rc; string expResult = "StatusCondition test succeeded."; result = new Test.Framework.TestResult(expResult, string.Empty, Test.Framework.TestVerdict .Pass, Test.Framework.TestVerdict.Fail); condition = new DDS.GuardCondition(); waitset = new DDS.WaitSet(); waitset.AttachCondition(condition); DDS.ICondition[] activeConditions = new DDS.ICondition[0]; rc = waitset.Wait(ref activeConditions, new DDS.Duration(3, 0)); if (rc != DDS.ReturnCode.Timeout) { result.Result = "WaitSet.Wait failed."; return result; } if (activeConditions.Length > 0) { result.Result = "WaitSet.Wait returned condition where it shouldn't."; return result; } threadedWaitset = new test.sacs.Condition1.GuardConditionWaitset(this, waitset); threadedWaitset.Start(); condition.SetTriggerValue(true); try { threadedWaitset.Join(); } catch (System.Exception e) { System.Console.WriteLine(e); } if (!threadedWaitset.Succeeded()) { result.Result = "GuardCondition trigger does not work properly."; return result; } result.Result = expResult; result.Verdict = Test.Framework.TestVerdict.Pass; return result; }