Ejemplo n.º 1
0
        private void Math(Scope scope, object left, object right, Operator op, double expected)
        {
            Expression expLeft = (left.GetType() == typeof(string))
                        ? (Expression) new VariableExpression(left.ToString(), scope)
                        : (Expression) new ConstantExpression(left);

            Expression expRight = (right.GetType() == typeof(string))
                         ? (Expression) new VariableExpression(right.ToString(), scope)
                         : (Expression) new ConstantExpression(right);

            var exp = new BinaryExpression(expLeft, op, expRight);

            Assert.AreEqual(expected, exp.EvaluateAs <double>());
        }