Example #1
0
        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);
        }
Example #2
0
        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;
        }