summaryrefslogtreecommitdiff
path: root/Userland/Utilities/run-tests.cpp
diff options
context:
space:
mode:
authorSam Atkins <atkinssj@serenityos.org>2022-02-06 13:33:42 +0000
committerTim Flynn <trflynn89@pm.me>2022-02-16 19:49:41 -0500
commit8260135d4d6cc50d15b459feb6010a989fcb7f5b (patch)
tree8211a9b8b29b749270c6d71f4faf6073e1a382cb /Userland/Utilities/run-tests.cpp
parent1a4dd47d5f691f77f5a11dbb5cdd8d58b2336245 (diff)
downloadserenity-8260135d4d6cc50d15b459feb6010a989fcb7f5b.zip
LibCore+Everywhere: Return ErrorOr from ConfigFile factory methods
I've attempted to handle the errors gracefully where it was clear how to do so, and simple, but a lot of this was just adding `release_value_but_fixme_should_propagate_errors()` in places.
Diffstat (limited to 'Userland/Utilities/run-tests.cpp')
-rw-r--r--Userland/Utilities/run-tests.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/Userland/Utilities/run-tests.cpp b/Userland/Utilities/run-tests.cpp
index 5941d2f26f..23f33a48b1 100644
--- a/Userland/Utilities/run-tests.cpp
+++ b/Userland/Utilities/run-tests.cpp
@@ -376,7 +376,13 @@ int main(int argc, char** argv)
return 1;
}
- auto config = config_file.is_empty() ? Core::ConfigFile::open_for_app("Tests") : Core::ConfigFile::open(config_file);
+ auto config_or_error = config_file.is_empty() ? Core::ConfigFile::open_for_app("Tests") : Core::ConfigFile::open(config_file);
+ if (config_or_error.is_error()) {
+ warnln("Failed to open configuration file ({}): {}", config_file.is_empty() ? "User config for Tests" : config_file.characters(), config_or_error.error());
+ return 1;
+ }
+ auto config = config_or_error.release_value();
+
if (config->num_groups() == 0)
warnln("Empty configuration file ({}) loaded!", config_file.is_empty() ? "User config for Tests" : config_file.characters());