Example #1
0
        public void Test_ShowExpr()
        {
            TestNode root = new TestNode();

            CreateTestTree(ref root, 2, 2);
            root.Str = null;
            TextualizeTree <TestNode, TestNode, int, Context> vis = new TextualizeTree <TestNode, TestNode, int, Context>();

            vis.CompilerParams.ReferencedAssemblies.Add(Assembly.GetExecutingAssembly().ManifestModule.ScopeName);
            vis.ShowExpr.Add(new ExprFormatter("s[d].Node.Value", " {0}: {1:0.###}"));
            vis.ShowExpr.Add(new ExprFormatter("s[d].Node.Array[2]", " {0}: {1}"));
            vis.ShowExpr.Add(new ExprFormatter("s[d].Node.Str", " {0}: '{1}'"));
            vis.ShowExpr.Add(new ExprFormatter("t", " {0}: '{1}'"));
            vis.ShowExpr.Add(new ExprFormatter("c", " {0}: '{1}'"));
            vis.Walk(root);
            // No checks, just see it does not crash.
        }
Example #2
0
        public void Test_ShowExprFromString()
        {
            TextualizeTree <TestNode, TestNode, int, Context> vis = new TextualizeTree <TestNode, TestNode, int, Context>();

            vis.ShowExprFromString(new string[] { "s[d].Node.Value", "s[d].Node.Array[2];", "s[d].Node;n:{1}", "1;1" });

            Assert.AreEqual("s[d].Node.Value", vis.ShowExpr[0].Expr);
            Assert.AreEqual("{0}:{1}", vis.ShowExpr[0].Format);

            Assert.AreEqual("s[d].Node.Array[2]", vis.ShowExpr[1].Expr);
            Assert.AreEqual("{0}:{1}", vis.ShowExpr[1].Format);

            Assert.AreEqual("s[d].Node", vis.ShowExpr[2].Expr);
            Assert.AreEqual("n:{1}", vis.ShowExpr[2].Format);

            Assert.AreEqual("1", vis.ShowExpr[3].Expr);
            Assert.AreEqual("1", vis.ShowExpr[3].Format);
        }