summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorOliver Reiche <oliver.reiche@huawei.com>2024-06-27 17:44:34 +0200
committerOliver Reiche <oliver.reiche@huawei.com>2024-06-28 11:34:53 +0200
commit01d9abcfc85d974763c3a7f8fed998342d92a681 (patch)
tree105a887360a49dfa8bf942f48c5560d29b0dcd6e /test
parentf82ee35bff7363e6381d659b26773f260109e2ea (diff)
downloadjustbuild-01d9abcfc85d974763c3a7f8fed998342d92a681.tar.gz
Use (un)expected for serve API
Diffstat (limited to 'test')
-rw-r--r--test/buildtool/serve_api/source_tree_client.test.cpp25
-rw-r--r--test/utils/serve_service/test_serve_config.hpp13
2 files changed, 17 insertions, 21 deletions
diff --git a/test/buildtool/serve_api/source_tree_client.test.cpp b/test/buildtool/serve_api/source_tree_client.test.cpp
index b5650e9f..4d70f2cd 100644
--- a/test/buildtool/serve_api/source_tree_client.test.cpp
+++ b/test/buildtool/serve_api/source_tree_client.test.cpp
@@ -40,35 +40,36 @@ TEST_CASE("Serve service client: tree-of-commit request", "[serve_api]") {
SECTION("Commit in bare checkout") {
auto root_id = st_client.ServeCommitTree(kRootCommit, ".", false);
- REQUIRE(std::holds_alternative<std::string>(root_id));
- CHECK(std::get<std::string>(root_id) == kRootId);
+ REQUIRE(root_id);
+ CHECK(*root_id == kRootId);
auto baz_id = st_client.ServeCommitTree(kRootCommit, "baz", false);
- REQUIRE(std::holds_alternative<std::string>(baz_id));
- CHECK(std::get<std::string>(baz_id) == kBazId);
+ REQUIRE(baz_id);
+ CHECK(*baz_id == kBazId);
}
SECTION("Commit in non-bare checkout") {
auto root_id = st_client.ServeCommitTree(kRootSymCommit, ".", false);
- REQUIRE(std::holds_alternative<std::string>(root_id));
- CHECK(std::get<std::string>(root_id) == kRootSymId);
+ REQUIRE(root_id);
+ CHECK(*root_id == kRootSymId);
auto baz_id = st_client.ServeCommitTree(kRootSymCommit, "baz", false);
- REQUIRE(std::holds_alternative<std::string>(baz_id));
- CHECK(std::get<std::string>(baz_id) == kBazSymId);
+ REQUIRE(baz_id);
+ CHECK(*baz_id == kBazSymId);
}
SECTION("Subdir not found") {
auto root_id =
st_client.ServeCommitTree(kRootCommit, "does_not_exist", false);
- REQUIRE(std::holds_alternative<bool>(root_id));
- CHECK(std::get<bool>(root_id)); // fatal failure
+ REQUIRE_FALSE(root_id);
+ CHECK(root_id.error() == GitLookupError::Fatal); // fatal failure
}
SECTION("Commit not known") {
auto root_id = st_client.ServeCommitTree(
"0123456789abcdef0123456789abcdef01234567", ".", false);
- REQUIRE(std::holds_alternative<bool>(root_id));
- CHECK_FALSE(std::get<bool>(root_id)); // non-fatal failure
+ REQUIRE_FALSE(root_id);
+ CHECK_FALSE(root_id.error() ==
+ GitLookupError::Fatal); // non-fatal failure
}
}
diff --git a/test/utils/serve_service/test_serve_config.hpp b/test/utils/serve_service/test_serve_config.hpp
index f225c557..c565aa0b 100644
--- a/test/utils/serve_service/test_serve_config.hpp
+++ b/test/utils/serve_service/test_serve_config.hpp
@@ -28,20 +28,15 @@ class TestServeConfig final {
[[nodiscard]] static auto ReadServeConfigFromEnvironment() noexcept
-> std::optional<RemoteServeConfig> {
RemoteServeConfig::Builder builder;
- auto result = builder.SetRemoteAddress(ReadRemoteServeAddressFromEnv())
+ auto config = builder.SetRemoteAddress(ReadRemoteServeAddressFromEnv())
.SetKnownRepositories(ReadRemoteServeReposFromEnv())
.Build();
- if (auto* config = std::get_if<RemoteServeConfig>(&result)) {
- return std::move(*config);
+ if (config) {
+ return *std::move(config);
}
- if (auto* error = std::get_if<std::string>(&result)) {
- Logger::Log(LogLevel::Error, *error);
- return std::nullopt;
- }
-
- Logger::Log(LogLevel::Error, "Unknown error occured.");
+ Logger::Log(LogLevel::Error, config.error());
return std::nullopt;
}
};