Пример #1
0
        public void TestMethod1()
        {
            ExpressionParser Parser = ExpressionParser.CreateParser();

            Parser.ParsingContext.Parameters.Add("x", Parameter.NewParameter(0));
            Parser.ParsingContext.Parameters.Add("c", Parameter.NewParameter(new List <int> {
                1, 2, 3
            }));
            DummyAction dummy  = new DummyAction();
            ForAction   action = new ForAction
            {
                Parser = Parser,
                CollectionExpression = "c$",
                ItemVarName          = "i",
                InnerAction          = new BlockAction
                {
                    ActionList = new List <IAction>
                    {
                        dummy,
                        new SetVariableAction
                        {
                            VariableName = "x",
                            Expression   = "x + i$"
                        }
                    }
                }
            };

            action.ExecuteAction();
            Assert.AreEqual(3, dummy.Count);
            Assert.AreEqual(6.0, (double)Parser.ParsingContext.Parameters["x"].ParameterValue);
        }
Пример #2
0
        public void TestMethod1()
        {
            ExpressionParser Parser = ExpressionParser.CreateParser();

            Parser.ParsingContext.Parameters.Add("x", Parameter.NewParameter(1));
            DummyAction dummy  = new DummyAction();
            WhileAction action = new WhileAction
            {
                Parser = Parser,
                ConditionExpression = "x < 5$",
                InnerAction         = new BlockAction
                {
                    ActionList = new List <IAction>
                    {
                        dummy,
                        new SetVariableAction
                        {
                            VariableName = "x",
                            Expression   = "x + 1$"
                        }
                    }
                }
            };

            action.ExecuteAction();
            Assert.AreEqual(4, dummy.Count);
        }