private Outcome GetFalseActionTrace(TraceGroup traceGroup)
 {
     if (_falseAction != null)
     {
         return(_falseAction.GetTrace(traceGroup));
     }
     return(Outcome.Completed);
 }
예제 #2
0
        protected override void GetActivitySpecificTrace(TraceGroup traceGroup)
        {
            //start element will be null in case of empty flowchart
            if (_startElement != null)
            {
                CurrentOutcome = _startElement.GetTrace(traceGroup);
            }
            else if (_elements.Count == 1)
            {
                CurrentOutcome = _elements[0].GetTrace(traceGroup); //If just one element is added directly to elements collection in test
            }

            ResetElements();
        }
예제 #3
0
        internal override Outcome GetTrace(TraceGroup traceGroup)
        {
            if (_actionActivity != null)
            {
                Outcome outcome = _actionActivity.GetTrace(traceGroup);
                if (outcome.DefaultPropogationState != OutcomeState.Completed)
                {
                    return(outcome);
                }
            }

            if (_nextElement != null && !IsFaulting && !IsCancelling)
            {
                return(_nextElement.GetTrace(traceGroup));
            }

            return(Outcome.Completed);
        }
예제 #4
0
        protected Outcome GetTrace <T>(TraceGroup traceGroup)
        {
            Outcome outcome = Outcome.Completed;

            switch (expressionType)
            {
            case ExpressionType.Activity:
                outcome = this.expressionActivity.GetTrace(traceGroup);

                if (outcome.DefaultPropogationState != OutcomeState.Completed)
                {
                    return(outcome);
                }
                break;

            case ExpressionType.Literal:
                new TestDummyTraceActivity(typeof(Literal <T>), Outcome.Completed).GetTrace(traceGroup);
                break;

            case ExpressionType.VisualBasicValue:
                new TestDummyTraceActivity(typeof(LambdaValue <T>), Outcome.Completed).GetTrace(traceGroup);
                break;

            case ExpressionType.VariableValue:
                new TestDummyTraceActivity(typeof(VariableValue <T>), Outcome.Completed).GetTrace(traceGroup);
                break;

            default: break;
            }

            TestFlowElement element = GetNextElement();

            if (element != null)
            {
                return(element.GetTrace(traceGroup));
            }
            return(Outcome.Completed);
        }