コード例 #1
0
        public void SetupEvaluator()
        {
            _conditionEvaluator = new ConditionEvaluatorIronJS();
            _runtimeMock        = new Mock <IWorkflowRuntime>();
            var testObject1 = new TestObject
            {
                Bool   = true,
                Number = 1,
                Str    = "A"
            };
            var testObject2 = new TestObject
            {
                Bool   = false,
                Number = 2,
                Str    = "B"
            };

            _runtimeMock.Setup(m => m.Input).Returns(testObject1);
            _runtimeMock.Setup(m => m.ProviderResults).Returns(new[]
            {
                new ProviderRuntimeResult
                {
                    ProviderName   = "Provider1",
                    Result         = testObject2,
                    ProviderStatus = EWorkflowProviderRuntimeStatus.Success
                }
            });
        }
コード例 #2
0
 public void SetupEvaluator()
 {
     _conditionEvaluator = new ConditionEvaluatorIronPython();
     _runtimeMock = new Mock<IWorkflowRuntime>();
     var testObject1 = new TestObject
     {
         Bool = true,
         Number = 1,
         Str = "A"
     };
     var testObject2 = new TestObject
     {
         Bool = false,
         Number = 2,
         Str = "B"
     };
     _runtimeMock.Setup(m => m.Input).Returns(testObject1);
     _runtimeMock.Setup(m => m.ProviderResults).Returns(new[]
     {
         new ProviderRuntimeResult
         {
             ProviderName = "Provider1",
             Result = testObject2,
             ProviderStatus = EWorkflowProviderRuntimeStatus.Success
         }
     });
 }
コード例 #3
0
 public PermissionsService(IConditionParser parser, IDictionary <string, INode> nodeDefinitions,
                           IConditionEvaluator evaluator)
 {
     _parser          = parser;
     _nodeDefinitions = nodeDefinitions;
     _evaluator       = evaluator;
 }
コード例 #4
0
 /// <summary>
 /// Private constructor.
 /// (Use static methods for public construction.)
 /// </summary>
 /// <param name="evaluator"></param>
 protected AbstractWait(IConditionEvaluator evaluator)
 {
     ConditionEvaluators = new List <IConditionEvaluator> {
         evaluator
     };
     TimeoutSeconds    = null;
     AdditionalSeconds = 0;
     ActualTimeout     = -1;
     SuppressLogs      = true;
 }
コード例 #5
0
        public bool IsValid(object parameter, Condition condition)
        {
            IConditionEvaluator evaluator = (IConditionEvaluator)addIn.CreateObject(className);

            if (evaluator == null)
            {
                return(false);
            }
            addIn.AddInTree.ConditionEvaluators[name] = evaluator;
            return(evaluator.IsValid(parameter, condition));
        }
コード例 #6
0
        public bool IsValid(object caller, Condition condition)
        {
            IConditionEvaluator conditionEvaluator = (IConditionEvaluator)this.addIn.CreateObject(this.className);

            if (conditionEvaluator == null)
            {
                return(false);
            }
            AddInTree.ConditionEvaluators[this.name] = conditionEvaluator;
            return(conditionEvaluator.IsValid(caller, condition));
        }
コード例 #7
0
        public bool IsValid(object caller, Condition condition)
        {
            IConditionEvaluator evaluator = (IConditionEvaluator)plugin.CreateObject(className);

            if (evaluator == null)
            {
                return(false);
            }
            PluginTree.ConditionEvaluators[name] = evaluator;
            return(evaluator.IsValid(caller, condition));
        }
コード例 #8
0
        public void SetValueProvider(IValueProvider valueProvider)
        {
            ValueProvider = valueProvider;

            switch (valueProvider)
            {
            case BoolProvider boolProvider:
                Evaluator = new BoolConditionEvaluator();
                break;

            case IntProvider intProvider:
                Evaluator = new IntConditionEvaluator();
                break;

            case FloatProvider floatProvider:
                Evaluator = new FloatConditionEvaluator();
                break;

            case TriggerProvider triggerProvider:
                Evaluator = new TriggerConditionEvaluator();
                break;
            }
        }
コード例 #9
0
 public PermissionsChain(IConditionEvaluator evaluator)
 {
     _evaluator = evaluator;
 }
コード例 #10
0
 public void BeforeEach()
 {
     _greaterThanEvaluator = new GreaterThanIntEvaluator<ValidatableStub>(stub => stub.NumberInt, stub => 0);
 }
コード例 #11
0
 /// <summary>
 /// Private constructor.
 /// (Use static methods for public construction.)
 /// </summary>
 /// <param name="evaluator">The expected condition for which to wait.</param>
 private ValueAfterWaiting(IConditionEvaluator evaluator) : base(evaluator)
 {
 }
コード例 #12
0
 /// <summary>
 /// Private constructor.
 /// (Use static methods for public construction.)
 /// </summary>
 /// <param name="evaluator">The condition to wait upon until satisfied.</param>
 private Wait(IConditionEvaluator evaluator) : base(evaluator)
 {
 }