diff options
author | Oliver Reiche <oliver.reiche@huawei.com> | 2024-06-27 17:44:34 +0200 |
---|---|---|
committer | Oliver Reiche <oliver.reiche@huawei.com> | 2024-06-28 11:34:53 +0200 |
commit | 01d9abcfc85d974763c3a7f8fed998342d92a681 (patch) | |
tree | 105a887360a49dfa8bf942f48c5560d29b0dcd6e /test | |
parent | f82ee35bff7363e6381d659b26773f260109e2ea (diff) | |
download | justbuild-01d9abcfc85d974763c3a7f8fed998342d92a681.tar.gz |
Use (un)expected for serve API
Diffstat (limited to 'test')
-rw-r--r-- | test/buildtool/serve_api/source_tree_client.test.cpp | 25 | ||||
-rw-r--r-- | test/utils/serve_service/test_serve_config.hpp | 13 |
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; } }; |