Преглед изворни кода

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 година
родитељ
комит
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;