示例#1
0
        public void ParseNewArrayWithValues()
        {
            IExpression expression = ParseExpression("new int[] { 1, 2, 3 }");

            Assert.IsNotNull(expression);
            Assert.IsInstanceOfType(expression, typeof(InitializeArrayExpression));

            InitializeArrayExpression newarrexpr = (InitializeArrayExpression)expression;

            Assert.AreEqual("int", newarrexpr.TypeName);
            Assert.IsNotNull(newarrexpr.Values);
            Assert.AreEqual(3, newarrexpr.Values.Count);
        }
示例#2
0
        public void EvaluateSimpleInitializeArrayExpression()
        {
            IExpression expression = new InitializeArrayExpression("System.Int32", new IExpression[] { new ConstantExpression(1), new ConstantExpression(2) });

            object result = expression.Evaluate(new BindingEnvironment());

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result, typeof(int[]));

            int[] array = (int[])result;

            Assert.AreEqual(2, array.Length);
            Assert.AreEqual(1, array[0]);
            Assert.AreEqual(2, array[1]);
        }