summaryrefslogtreecommitdiff
path: root/test/buildtool/graph_traverser/graph_traverser_remote.test.cpp
diff options
context:
space:
mode:
authorMaksim Denisov <denisov.maksim@huawei.com>2024-07-02 13:21:14 +0200
committerMaksim Denisov <denisov.maksim@huawei.com>2024-07-05 13:32:39 +0200
commitd202e8f6051df5eb89d0f2eb1b9ac7109d204f56 (patch)
tree562d90c0a5396a259d11c4288162403489a6e4fd /test/buildtool/graph_traverser/graph_traverser_remote.test.cpp
parent5140befaa10f65145fe041b416b7764127efc379 (diff)
downloadjustbuild-d202e8f6051df5eb89d0f2eb1b9ac7109d204f56.tar.gz
Remove HermeticLocalTestFixture
...and create StorageConfig and Storage in place if needed.
Diffstat (limited to 'test/buildtool/graph_traverser/graph_traverser_remote.test.cpp')
-rw-r--r--test/buildtool/graph_traverser/graph_traverser_remote.test.cpp59
1 files changed, 49 insertions, 10 deletions
diff --git a/test/buildtool/graph_traverser/graph_traverser_remote.test.cpp b/test/buildtool/graph_traverser/graph_traverser_remote.test.cpp
index e24a8d4e..d9de3b10 100644
--- a/test/buildtool/graph_traverser/graph_traverser_remote.test.cpp
+++ b/test/buildtool/graph_traverser/graph_traverser_remote.test.cpp
@@ -13,72 +13,111 @@
// limitations under the License.
#include "catch2/catch_test_macros.hpp"
+#include "src/buildtool/storage/config.hpp"
+#include "src/buildtool/storage/storage.hpp"
#include "test/buildtool/graph_traverser/graph_traverser.test.hpp"
#include "test/utils/remote_execution/test_auth_config.hpp"
+[[nodiscard]] static auto CreateConfig() -> StorageConfig {
+ auto cache_dir = FileSystemManager::GetCurrentDirectory() / "cache";
+ auto storage_config = StorageConfig::Instance();
+ if (not FileSystemManager::RemoveDirectory(cache_dir, true) or
+ not FileSystemManager::CreateDirectoryExclusive(cache_dir) or
+ not storage_config.SetBuildRoot(cache_dir)) {
+ std::exit(EXIT_FAILURE);
+ }
+ return storage_config;
+}
+
TEST_CASE("Remote: Output created and contents are correct",
"[graph_traverser]") {
+ StorageConfig const storage_config = CreateConfig();
+ auto const storage = Storage::Create(&storage_config);
auto auth_config = TestAuthConfig::ReadAuthConfigFromEnvironment();
REQUIRE(auth_config);
- TestHelloWorldCopyMessage(&*auth_config, false /* not hermetic */);
+ TestHelloWorldCopyMessage(
+ storage_config, storage, &*auth_config, false /* not hermetic */);
}
TEST_CASE("Remote: Output created when entry point is local artifact",
"[graph_traverser]") {
+ StorageConfig const storage_config = CreateConfig();
+ auto const storage = Storage::Create(&storage_config);
auto auth_config = TestAuthConfig::ReadAuthConfigFromEnvironment();
REQUIRE(auth_config);
- TestCopyLocalFile(&*auth_config, false /* not hermetic */);
+ TestCopyLocalFile(
+ storage_config, storage, &*auth_config, false /* not hermetic */);
}
TEST_CASE("Remote: Actions are not re-run", "[graph_traverser]") {
+ StorageConfig const storage_config = CreateConfig();
+ auto const storage = Storage::Create(&storage_config);
auto auth_config = TestAuthConfig::ReadAuthConfigFromEnvironment();
REQUIRE(auth_config);
- TestSequencePrinterBuildLibraryOnly(&*auth_config,
- false /* not hermetic */);
+ TestSequencePrinterBuildLibraryOnly(
+ storage_config, storage, &*auth_config, false /* not hermetic */);
}
TEST_CASE("Remote: KNOWN artifact", "[graph_traverser]") {
+ StorageConfig const storage_config = CreateConfig();
+ auto const storage = Storage::Create(&storage_config);
auto auth_config = TestAuthConfig::ReadAuthConfigFromEnvironment();
REQUIRE(auth_config);
- TestHelloWorldWithKnownSource(&*auth_config, false /* not hermetic */);
+ TestHelloWorldWithKnownSource(
+ storage_config, storage, &*auth_config, false /* not hermetic */);
}
TEST_CASE("Remote: Blobs uploaded and correctly used", "[graph_traverser]") {
+ StorageConfig const storage_config = CreateConfig();
+ auto const storage = Storage::Create(&storage_config);
auto auth_config = TestAuthConfig::ReadAuthConfigFromEnvironment();
REQUIRE(auth_config);
- TestBlobsUploadedAndUsed(&*auth_config, false /* not hermetic */);
+ TestBlobsUploadedAndUsed(
+ storage_config, storage, &*auth_config, false /* not hermetic */);
}
TEST_CASE("Remote: Environment variables are set and used",
"[graph_traverser]") {
+ StorageConfig const storage_config = CreateConfig();
+ auto const storage = Storage::Create(&storage_config);
auto auth_config = TestAuthConfig::ReadAuthConfigFromEnvironment();
REQUIRE(auth_config);
- TestEnvironmentVariablesSetAndUsed(&*auth_config, false /* not hermetic */);
+ TestEnvironmentVariablesSetAndUsed(
+ storage_config, storage, &*auth_config, false /* not hermetic */);
}
TEST_CASE("Remote: Trees correctly used", "[graph_traverser]") {
+ StorageConfig const storage_config = CreateConfig();
+ auto const storage = Storage::Create(&storage_config);
auto auth_config = TestAuthConfig::ReadAuthConfigFromEnvironment();
REQUIRE(auth_config);
- TestTreesUsed(&*auth_config, false /* not hermetic */);
+ TestTreesUsed(
+ storage_config, storage, &*auth_config, false /* not hermetic */);
}
TEST_CASE("Remote: Nested trees correctly used", "[graph_traverser]") {
+ StorageConfig const storage_config = CreateConfig();
+ auto const storage = Storage::Create(&storage_config);
auto auth_config = TestAuthConfig::ReadAuthConfigFromEnvironment();
REQUIRE(auth_config);
- TestNestedTreesUsed(&*auth_config, false /* not hermetic */);
+ TestNestedTreesUsed(
+ storage_config, storage, &*auth_config, false /* not hermetic */);
}
TEST_CASE("Remote: Detect flaky actions", "[graph_traverser]") {
+ StorageConfig const storage_config = CreateConfig();
+ auto const storage = Storage::Create(&storage_config);
auto auth_config = TestAuthConfig::ReadAuthConfigFromEnvironment();
REQUIRE(auth_config);
- TestFlakyHelloWorldDetected(&*auth_config, false /* not hermetic */);
+ TestFlakyHelloWorldDetected(
+ storage_config, storage, &*auth_config, false /* not hermetic */);
}