public void AddStrings() { var e = Expression.Parse ("\"3\" + \"2\""); var env = new ObjectEvalEnv (); var v = e.Eval (env); Assert.AreEqual ("32", v); }
public void Add() { var e = Expression.Parse ("3 + 2"); var env = new ObjectEvalEnv (); var v = e.Eval (env); Assert.AreEqual (5, v); }
public void DividePromote() { var e = Expression.Parse ("3.0 / 2"); var env = new ObjectEvalEnv (); var v = e.Eval (env); Assert.AreEqual (1.5, v); }
public void Multiply() { var e = Expression.Parse ("3 * 2"); var env = new ObjectEvalEnv (); var v = e.Eval (env); Assert.AreEqual (6, v); }
public void UnaryMinus() { var e = Expression.Parse("-3"); var env = new ObjectEvalEnv(); var v = e.Eval(env); Assert.AreEqual(-3, v); }
public void Divide() { var e = Expression.Parse("3 / 2"); var env = new ObjectEvalEnv(); var v = e.Eval(env); Assert.AreEqual(1, v); }
public void Subtract() { var e = Expression.Parse("3 - 2"); var env = new ObjectEvalEnv(); var v = e.Eval(env); Assert.AreEqual(1, v); }
public void Multiply() { var e = Expression.Parse("3 * 2"); var env = new ObjectEvalEnv(); var v = e.Eval(env); Assert.AreEqual(6, v); }
public void Add() { var e = Expression.Parse("3 + 2"); var env = new ObjectEvalEnv(); var v = e.Eval(env); Assert.AreEqual(5, v); }
public void AddStrings() { var e = Expression.Parse("\"3\" + \"2\""); var env = new ObjectEvalEnv(); var v = e.Eval(env); Assert.AreEqual("32", v); }
public void ObjectLiteralMath() { var e = (ObjectLiteralExpression)Expression.Parse("{a:3-2}"); var env = new ObjectEvalEnv(); var v = e.Assignments[0].Value.Eval(env); Assert.AreEqual(1, v); }
public void NotEqual() { var e = Expression.Parse("3 != 2"); var env = new ObjectEvalEnv(); var v = e.Eval(env); Assert.IsTrue((bool)v); }
public void ObjectLiteralWithNewArg() { var e = Expression.Parse("new (\"Frank\") { Age = 42 }"); Assert.IsInstanceOfType(e, typeof(ObjectLiteralExpression)); var env = new ObjectEvalEnv(null, typeof(TestObject)); var v = e.Eval(env); Assert.IsInstanceOfType(v, typeof(TestObject)); var o = (TestObject)v; Assert.AreEqual("Frank", o.Name); Assert.AreEqual(42, o.Age); }
public void ObjectLiteralWithNewArg() { var e = Expression.Parse ("new (\"Frank\") { Age = 42 }"); Assert.IsInstanceOfType (e, typeof (ObjectLiteralExpression)); var env = new ObjectEvalEnv (null, typeof (TestObject)); var v = e.Eval (env); Assert.IsInstanceOfType (v, typeof (TestObject)); var o = (TestObject)v; Assert.AreEqual ("Frank", o.Name); Assert.AreEqual (42, o.Age); }
public void Subtract() { var e = Expression.Parse ("3 - 2"); var env = new ObjectEvalEnv (); var v = e.Eval (env); Assert.AreEqual (1, v); }
public void ObjectLiteralMath() { var e = (ObjectLiteralExpression)Expression.Parse ("{a:3-2}"); var env = new ObjectEvalEnv (); var v = e.Assignments[0].Value.Eval (env); Assert.AreEqual (1, v); }
public void NotEqual() { var e = Expression.Parse ("3 != 2"); var env = new ObjectEvalEnv (); var v = e.Eval (env); Assert.IsTrue ((bool)v); }
public void UnaryMinus() { var e = Expression.Parse ("-3"); var env = new ObjectEvalEnv (); var v = e.Eval (env); Assert.AreEqual (-3, v); }