mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-23 16:10:20 +00:00
Utilities: Add update-cpp-test-results utility
This is a small utility that updates the target tests results for the LibCpp parser and preprocessor regression tests. It's handy to run after changing something in the output of either the parser or the preprocessor.
This commit is contained in:
parent
e9d3f3793c
commit
2903c47ba0
Notes:
sideshowbarker
2024-07-17 18:58:43 +09:00
Author: https://github.com/itamar8910 Commit: https://github.com/SerenityOS/serenity/commit/2903c47ba0 Pull-request: https://github.com/SerenityOS/serenity/pull/12363 Reviewed-by: https://github.com/linusg
2 changed files with 40 additions and 0 deletions
|
@ -190,6 +190,7 @@ target_link_libraries(umount LibMain)
|
|||
target_link_libraries(uname LibMain)
|
||||
target_link_libraries(uniq LibMain)
|
||||
target_link_libraries(unzip LibArchive LibCompress LibMain)
|
||||
target_link_libraries(update-cpp-test-results LibCpp LibCore LibMain)
|
||||
target_link_libraries(uptime LibMain)
|
||||
target_link_libraries(userdel LibMain)
|
||||
target_link_libraries(usermod LibMain)
|
||||
|
|
39
Userland/Utilities/update-cpp-test-results.cpp
Normal file
39
Userland/Utilities/update-cpp-test-results.cpp
Normal file
|
@ -0,0 +1,39 @@
|
|||
/*
|
||||
* Copyright (c) 2022, Itamar S. <itamar8910@gmail.com>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#include <AK/Format.h>
|
||||
#include <AK/LexicalPath.h>
|
||||
#include <LibCore/Command.h>
|
||||
#include <LibCore/DirIterator.h>
|
||||
#include <LibCore/StandardPaths.h>
|
||||
#include <LibMain/Main.h>
|
||||
|
||||
ErrorOr<int> serenity_main(Main::Arguments)
|
||||
{
|
||||
Core::DirIterator parser_tests(LexicalPath::join(Core::StandardPaths::home_directory(), "cpp-tests/parser").string());
|
||||
while (parser_tests.has_next()) {
|
||||
auto cpp_full_path = parser_tests.next_full_path();
|
||||
if (!cpp_full_path.ends_with(".cpp"))
|
||||
continue;
|
||||
auto ast_full_path = cpp_full_path.replace(".cpp", ".ast");
|
||||
outln("{}", cpp_full_path);
|
||||
auto res = Core::command("/bin/sh", { "sh", "-c", String::formatted("cpp-parser {} > {}", cpp_full_path, ast_full_path) }, {});
|
||||
VERIFY(!res.is_error());
|
||||
}
|
||||
|
||||
Core::DirIterator preprocessor_tests(LexicalPath::join(Core::StandardPaths::home_directory(), "cpp-tests/preprocessor").string());
|
||||
while (preprocessor_tests.has_next()) {
|
||||
auto cpp_full_path = preprocessor_tests.next_full_path();
|
||||
if (!cpp_full_path.ends_with(".cpp"))
|
||||
continue;
|
||||
auto ast_full_path = cpp_full_path.replace(".cpp", ".txt");
|
||||
outln("{}", cpp_full_path);
|
||||
auto res = Core::command("/bin/sh", { "sh", "-c", String::formatted("cpp-preprocessor {} > {}", cpp_full_path, ast_full_path) }, {});
|
||||
VERIFY(!res.is_error());
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
Loading…
Reference in a new issue