Beispiel #1
0
        public void SumTest()
        {
            var    visitor = new DumpVisitor();
            var    parser  = new Parser();
            string data    = "1+2";
            var    expr    = parser.Parse(data);

            expr.Accept(visitor);
            Assert.AreEqual("BinaryExpr(Literal(1)+Literal(2))", visitor.ToString());
        }
Beispiel #2
0
        public void JustVarTest()
        {
            var    visitor = new DumpVisitor();
            var    parser  = new Parser();
            string data    = "a";
            var    expr    = parser.Parse(data);

            expr.Accept(visitor);
            Assert.AreEqual("Variable(a)", visitor.ToString());
        }
Beispiel #3
0
        public void MoreParenTest()
        {
            var    visitor = new DumpVisitor();
            var    parser  = new Parser();
            string data    = "(a-(3))";
            var    expr    = parser.Parse(data);

            expr.Accept(visitor);
            Assert.AreEqual("ParenExpr(BinaryExpr(Variable(a)-ParenExpr(Literal(3))))", visitor.ToString());
        }
Beispiel #4
0
        public void OpsTest()
        {
            var    visitor = new DumpVisitor();
            var    parser  = new Parser();
            string data    = "1+a*3-b/5";
            var    expr    = parser.Parse(data);

            expr.Accept(visitor);
            Assert.AreEqual("BinaryExpr(BinaryExpr(Literal(1)+BinaryExpr(Variable(a)*Literal(3)))-BinaryExpr(Variable(b)/Literal(5)))", visitor.ToString());
        }