public string ItPrintsPrograms(string code) { var ast = DaisyParser.Parse(code); var p = new DaisyAstPrinter(ast.Root); var back = p.Print(); Assert.AreEqual(0, p.indent); return back; }
public string ItPrintsPrograms(string code) { var ast = DaisyParser.Parse(code); var p = new DaisyAstPrinter(ast.Root); var back = p.Print(); Assert.AreEqual(0, p.indent); return(back); }
public void ItParsesLanguages(string code, string expectedTree) { var llstream = new LookAheadStream <Token>(new Lexer(code.ToStream()).Lex()); var parser = new DaisyParser(llstream); var tree = parser.Parse(); Assert.IsNotNull(tree); var actualTree = DaisyAstPrinter.Print(tree.Root); if (expectedTree != actualTree) { Console.WriteLine(expectedTree); Console.WriteLine("----------------"); Console.WriteLine(actualTree); } Assert.AreEqual(expectedTree, actualTree); }