[llvm] [orc-rt] Use the Error matchers in OptionParserTest (PR #228701)
Lang Hames via llvm-commits
llvm-commits at lists.llvm.org
Sat Oct 3 04:58:53 PDT 2026
https://github.com/lhames created https://github.com/llvm/llvm-project/pull/228701
Use the Error matchers introduced in 4c8a437d0487 to clean up error checks in OptionParserTest.
>From 3518985fa6da124afd9a5314e52c3a5b41e96e85 Mon Sep 17 00:00:00 2001
From: Lang Hames <lhames at gmail.com>
Date: Thu, 1 Oct 2026 09:28:44 +1000
Subject: [PATCH] [orc-rt] Use the Error matchers in OptionParserTest
Use the Error matchers introduced in 4c8a437d0487 to clean up error
checks in OptionParserTest.
---
orc-rt/test/unit/tools/OptionParserTest.cpp | 60 ++++++++++-----------
1 file changed, 27 insertions(+), 33 deletions(-)
diff --git a/orc-rt/test/unit/tools/OptionParserTest.cpp b/orc-rt/test/unit/tools/OptionParserTest.cpp
index 6a743b6e416af8..65952334712969 100644
--- a/orc-rt/test/unit/tools/OptionParserTest.cpp
+++ b/orc-rt/test/unit/tools/OptionParserTest.cpp
@@ -8,10 +8,12 @@
#include "orc-rt-internal/tools/OptionParser.h"
#include "orc-rt/support/Error.h"
-#include "llvm/Testing/Support/Error.h"
+
+#include "ErrorMatchers.h"
#include "gtest/gtest.h"
using namespace orc_rt;
+using namespace orc_rt::test;
class OptionParserTest : public ::testing::Test {
protected:
@@ -34,43 +36,29 @@ class OptionParserTest : public ::testing::Test {
TEST_F(OptionParserTest, NoopTest) {
OptionParser Parser;
const char *Argv[] = {""};
- auto Err = Parser.parse(std::begin(Argv), std::end(Argv));
- EXPECT_FALSE(!!Err);
+ EXPECT_THAT_ERROR(Parser.parse(std::begin(Argv), std::end(Argv)),
+ Succeeded());
}
TEST_F(OptionParserTest, ValueRequired) {
const char *Argv[] = {"--host"};
- auto Err = Parser.parse(std::begin(Argv), std::end(Argv));
- if (!Err) {
- ADD_FAILURE() << "--host requires a value, shouldn't succeed.";
- } else {
- orc_rt::consumeError(std::move(Err));
- }
+ EXPECT_THAT_ERROR(Parser.parse(std::begin(Argv), std::end(Argv)), Failed());
}
TEST_F(OptionParserTest, UnknownOption) {
const char *Argv[] = {"--unknown=foo"};
- auto Err = Parser.parse(std::begin(Argv), std::end(Argv));
- if (!Err) {
- ADD_FAILURE() << "unknown option, shouldn't succeed.";
- } else {
- orc_rt::consumeError(std::move(Err));
- }
+ EXPECT_THAT_ERROR(Parser.parse(std::begin(Argv), std::end(Argv)), Failed());
}
TEST_F(OptionParserTest, InvalidInteger) {
const char *Argv[] = {"--port=not_a_number"};
- auto Err = Parser.parse(std::begin(Argv), std::end(Argv));
- if (!Err) {
- ADD_FAILURE() << "Invalid integer, shouldn't succeed.";
- } else {
- orc_rt::consumeError(std::move(Err));
- }
+ EXPECT_THAT_ERROR(Parser.parse(std::begin(Argv), std::end(Argv)), Failed());
}
TEST_F(OptionParserTest, ParseFullConfiguration) {
const char *Argv[] = {"--host=example.com", "--port=8080", "--verbose=true"};
- cantFail(Parser.parse(std::begin(Argv), std::end(Argv)));
+ ASSERT_THAT_ERROR(Parser.parse(std::begin(Argv), std::end(Argv)),
+ Succeeded());
EXPECT_EQ(Host, "example.com");
EXPECT_EQ(Port, 8080);
EXPECT_EQ(Verbose, true);
@@ -78,28 +66,32 @@ TEST_F(OptionParserTest, ParseFullConfiguration) {
TEST_F(OptionParserTest, ShortFlagClustering) {
const char *Argv[] = {"-v?"};
- cantFail(Parser.parse(std::begin(Argv), std::end(Argv)));
+ ASSERT_THAT_ERROR(Parser.parse(std::begin(Argv), std::end(Argv)),
+ Succeeded());
EXPECT_TRUE(Verbose);
EXPECT_TRUE(Help);
}
TEST_F(OptionParserTest, ShortFlagWithValue) {
const char *Argv[] = {"-p", "1234", "-hlocalhost"};
- cantFail(Parser.parse(std::begin(Argv), std::end(Argv)));
+ ASSERT_THAT_ERROR(Parser.parse(std::begin(Argv), std::end(Argv)),
+ Succeeded());
EXPECT_EQ(Port, 1234);
EXPECT_EQ(Host, "localhost");
}
TEST_F(OptionParserTest, ClusterWithValueAtEnd) {
const char *Argv[] = {"-vp9999"};
- cantFail(Parser.parse(std::begin(Argv), std::end(Argv)));
+ ASSERT_THAT_ERROR(Parser.parse(std::begin(Argv), std::end(Argv)),
+ Succeeded());
EXPECT_TRUE(Verbose);
EXPECT_EQ(Port, 9999);
}
TEST_F(OptionParserTest, DoubleDashTerminatesOptionParsing) {
const char *Argv[] = {"-v", "--", "-p", "1234"};
- cantFail(Parser.parse(std::begin(Argv), std::end(Argv)));
+ ASSERT_THAT_ERROR(Parser.parse(std::begin(Argv), std::end(Argv)),
+ Succeeded());
EXPECT_TRUE(Verbose);
EXPECT_EQ(Port, 8080); // Should remain default
@@ -110,13 +102,16 @@ TEST_F(OptionParserTest, DoubleDashTerminatesOptionParsing) {
TEST_F(OptionParserTest, ParseAsMainWithEmptyArgsSucceeds) {
const char *Argv[] = {"appname"};
- auto Err = Parser.parseAsMainArgs(std::size(Argv), const_cast<char **>(Argv));
- EXPECT_FALSE(!!Err);
+ EXPECT_THAT_ERROR(
+ Parser.parseAsMainArgs(std::size(Argv), const_cast<char **>(Argv)),
+ Succeeded());
}
TEST_F(OptionParserTest, ParseAsMainWithRegularArgsSucceeds) {
const char *Argv[] = {"appname", "-v", "--", "-p", "1234"};
- cantFail(Parser.parseAsMainArgs(std::size(Argv), const_cast<char **>(Argv)));
+ ASSERT_THAT_ERROR(
+ Parser.parseAsMainArgs(std::size(Argv), const_cast<char **>(Argv)),
+ Succeeded());
EXPECT_TRUE(Verbose);
EXPECT_EQ(Port, 8080); // Should remain default
@@ -127,10 +122,9 @@ TEST_F(OptionParserTest, ParseAsMainWithRegularArgsSucceeds) {
TEST_F(OptionParserTest, ParseAsMainWithEmptyListFails) {
std::vector<char *> Argv;
- auto Err = Parser.parseAsMainArgs(static_cast<int>(Argv.size()), Argv.data());
-
- EXPECT_TRUE(!!Err);
- consumeError(std::move(Err));
+ EXPECT_THAT_ERROR(
+ Parser.parseAsMainArgs(static_cast<int>(Argv.size()), Argv.data()),
+ Failed());
}
TEST_F(OptionParserTest, PrintHelpAlignmentWithShortFlags) {
More information about the llvm-commits
mailing list