X-Git-Url: http://git.roojs.org/?p=app.Builder.js;a=blobdiff_plain;f=tests%2FTreeBuilder.vala;h=325a3c7b89fbeea4aa73f5be3a4452e812c2244e;hp=e091cc1aff6d965b90d36bc9b5f278dfcf369eb2;hb=HEAD;hpb=b56a893549d57858a4d238b2f1df1c77eaf34a32 diff --git a/tests/TreeBuilder.vala b/tests/TreeBuilder.vala index e091cc1af..325a3c7b8 100644 --- a/tests/TreeBuilder.vala +++ b/tests/TreeBuilder.vala @@ -6,31 +6,45 @@ namespace Palete { public class ValaSourceReport : Vala.Report { + + Gee.HashMap line_errors; + + public ValaSourceReport() + { + base(); + this.line_errors = new Gee.HashMap (); + } public override void err (Vala.SourceReference? source, string message) { errors++; if (source == null) { - stderr.printf ("My error: %s\n", message); - } else { - stderr.printf ("%s: My error: %s\n", source.to_string (), message); - - //Vala.Report.report_source (source); - + return; + //stderr.printf ("My error: %s\n", message); + } + if (source.file != "~~~~~testfile.vala") { + return; } + var pre = ""; + if (line_errors.has_key(source.begin.line)) { + pre = line_errors.get(source.begin.line) + "\n"; + + } + line_errors.set(source.begin.line, pre + message); } } public class ValaSource : Vala.CodeVisitor { - - public Vala.CodeContext check (JsRender.Gtk file) { - // init context: + Vala.CodeContext context; + + public ValaSource(JsRender.JsRender file) { + base(); + // init context: - - var context = new Vala.CodeContext (); + context = new Vala.CodeContext (); Vala.CodeContext.push (context); context.experimental = false; @@ -59,7 +73,8 @@ namespace Palete { var source_file = new Vala.SourceFile ( context, Vala.SourceFileType.SOURCE, - file.toSource() + "~~~~~testfile.vala", + NodeToVala.mungeFile(file) ); //context.add_source_file (testcode); @@ -94,8 +109,9 @@ namespace Palete { parser.parse (context); //gir_parser.parse (context); if (context.report.get_errors () > 0) { - print("got errors"); - return context; + print("parse got errors"); + Vala.CodeContext.pop (context); + return; } @@ -104,20 +120,23 @@ namespace Palete { context.check (); if (context.report.get_errors () > 0) { print("check got errors"); - return context; + Vala.CodeContext.pop (context); + return; } + Vala.CodeContext.pop (context); print("ALL OK?\n"); - return context; + return; } // // startpoint: // } +} int main (string[] args) { - var a = new TreeBuilder(); + var a = new ValaSource(file); a.create_valac_tree(); return 0; }