Example #1
0
        public void TestEvaluateArrayWithArithLiterals()
        {
            IKernel kernel = TestModule.GetTestKernel ();
            var factory = kernel.Get<IExecutorFactory>();
            ArrayExpr array = new ArrayExpr(factory.GetArrayExecutor());

            array.Elements.Add(new ArithExpr {
                Left = new NumberLiteral {
                    Value = 3 },
                Right = new NumberLiteral {
                    Value = 4 },
                Op = ArithOp.Add
            });

            Dynamic dynamic = array.Evaluate();
            Assert.AreEqual(dynamic.ArrayValue[0].NumberValue, 7, "First element should be 3+4");
        }
Example #2
0
        public void TestEvaluateArrayWithStringLiterals()
        {
            IKernel kernel = TestModule.GetTestKernel ();
            var factory = kernel.Get<IExecutorFactory>();
            ArrayExpr array = new ArrayExpr(factory.GetArrayExecutor());

            array.Elements.Add(new StringLiteral {
                Value = "yay"
            });

            array.Elements.Add(new StringLiteral {
                Value = "boo"
            });

            Dynamic dynamic = array.Evaluate();
            Assert.AreEqual(DynamicType.arrayType, dynamic.Type, "Type should be array");
            Assert.AreEqual(dynamic.ArrayValue[0].StringValue, "yay", "First element should be 'yay'");
            Assert.AreEqual(dynamic.ArrayValue[1].StringValue, "boo", "Second element should be 'boo'");
        }