public void EvaluateArrayVariableExpression() { Context context = new Context(); context.SetValue("array", new string[] { "one", "two", "three" }); IExpression expression = new ArrayExpression(new VariableExpression("array"), new IExpression[] { new ConstantExpression(1) }); object result = expression.Evaluate(context); Assert.IsNotNull(result); Assert.AreEqual("two", result); }
public void EvaluateSimpleList() { ArrayExpression expr = new ArrayExpression(new IExpression[] { new ConstantExpression(1), new ConstantExpression(2) }); var result = expr.Evaluate(null); Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(IList)); var list = (IList)result; Assert.AreEqual(2, list.Count); Assert.AreEqual(1, list[0]); Assert.AreEqual(2, list[1]); }
public void GetArray() { ArrayExpression expression = new ArrayExpression(new IExpression[] { new ConstantExpression(1), new ConstantExpression(2), new ConstantExpression(3) }); var result = expression.Evaluate(null); Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(IList <object>)); var array = (IList <object>)result; Assert.AreEqual(3, array.Count); Assert.AreEqual(1, array[0]); Assert.AreEqual(2, array[1]); Assert.AreEqual(3, array[2]); }
public void EvaluateArrayDotExpression() { Context context = new Context(); DynamicObject data = new DynamicObject(); data.SetValue("Numbers", new string[] { "one", "two", "three" }); context.SetValue("data", data); IExpression expression = new ArrayExpression(new DotExpression(new VariableExpression("data"), "Numbers"), new IExpression[] { new ConstantExpression(1) }); object result = expression.Evaluate(context); Assert.IsNotNull(result); Assert.AreEqual("two", result); }
public void EvaluateArrayExpression() { ArrayExpression expr = new ArrayExpression(new IExpression[] { new ConstantExpression(1), new ConstantExpression(2), new ConstantExpression(3) }); Assert.IsNotNull(expr.Expressions); Assert.AreEqual(3, expr.Expressions.Count()); object result = expr.Evaluate(null); Assert.IsNotNull(result); Assert.That(result is IList); IList list = (IList)result; Assert.AreEqual(3, list.Count); Assert.AreEqual(1, list[0]); Assert.AreEqual(2, list[1]); Assert.AreEqual(3, list[2]); }