public void ParseCorrect(string s) { Assert.AreEqual(s, Expr.ParseExpr(s).ToSExpr()); }
public void ConverterToBinaryCorrect(string s) { Assert.AreEqual(Expr.ParseExpr(s).GetUnified().ToSExpr(), Expr.ParseExpr(s).GetUnified().ToBinExp().ToArray().ToSExpr().Item1); }
public void Parse() { Assert.AreEqual("0", Expr.ParseExpr("0").ToSExpr()); Assert.AreEqual("(shl1 1)", Expr.ParseExpr(" ( shl1 1) ").ToSExpr()); Assert.AreEqual("(fold 0 0 (lambda (x i) (shl1 x)))", Expr.ParseExpr("(fold 0 0 (lambda (x i ) ( shl1 x ) ))").ToSExpr()); }