Browse Source

JSSpecCompiler: Add option to silence all diagnostics and use in tests

In the future, we will probably want to test regressions in diagnostics
too but let's not do that for now.
Dan Klishch 1 year ago
parent
commit
ec16556fea

+ 5 - 1
Meta/Lagom/Tools/CodeGenerators/JSSpecCompiler/main.cpp

@@ -116,6 +116,9 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
     StringView passes_to_dump_cfg;
     args_parser.add_option(passes_to_dump_cfg, "Dump CFG after specified passes.", "dump-cfg", 0, "{all|last|<pass-name>|-<pass-name>[,...]}");
 
+    bool silence_diagnostics = false;
+    args_parser.add_option(silence_diagnostics, "Silence all diagnostics.", "silence-diagnostics", 0);
+
     args_parser.parse(arguments);
 
     CompilationPipeline pipeline;
@@ -163,7 +166,8 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
         }
     }
 
-    translation_unit.diag().print_diagnostics();
+    if (!silence_diagnostics)
+        translation_unit.diag().print_diagnostics();
 
     return 0;
 }

+ 2 - 0
Tests/JSSpecCompiler/test-runner.cpp

@@ -92,6 +92,8 @@ Vector<ByteString> build_command_line_arguments(LexicalPath const& test_source,
     if (test_source.has_extension(".cpp"sv))
         result.append("-xc++"sv);
 
+    result.append("--silence-diagnostics"sv);
+
     result.append(test_source.string());
 
     return result;