summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/buildtool/build_engine/target_map/target_map.test.cpp24
-rw-r--r--test/buildtool/execution_api/common/api_test.hpp13
-rw-r--r--test/buildtool/execution_api/local/local_api.test.cpp32
-rw-r--r--test/buildtool/execution_api/local/local_execution.test.cpp48
-rw-r--r--test/buildtool/execution_engine/executor/executor_api_local.test.cpp19
-rw-r--r--test/buildtool/graph_traverser/graph_traverser.test.hpp49
6 files changed, 98 insertions, 87 deletions
diff --git a/test/buildtool/build_engine/target_map/target_map.test.cpp b/test/buildtool/build_engine/target_map/target_map.test.cpp
index c3a875a7..18236837 100644
--- a/test/buildtool/build_engine/target_map/target_map.test.cpp
+++ b/test/buildtool/build_engine/target_map/target_map.test.cpp
@@ -106,10 +106,11 @@ TEST_CASE("simple targets", "[target_map]") {
auto serve_config = TestServeConfig::ReadFromEnvironment();
REQUIRE(serve_config);
+ LocalExecutionConfig local_exec_config{};
Auth auth{};
ApiBundle const apis{&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
/*repo_config=*/nullptr,
&auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -556,10 +557,11 @@ TEST_CASE("configuration deduplication", "[target_map]") {
auto serve_config = TestServeConfig::ReadFromEnvironment();
REQUIRE(serve_config);
+ LocalExecutionConfig local_exec_config{};
Auth auth{};
ApiBundle const apis{&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
/*repo_config=*/nullptr,
&auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -651,10 +653,11 @@ TEST_CASE("generator functions in string arguments", "[target_map]") {
auto serve_config = TestServeConfig::ReadFromEnvironment();
REQUIRE(serve_config);
+ LocalExecutionConfig local_exec_config{};
Auth auth{};
ApiBundle const apis{&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
/*repo_config=*/nullptr,
&auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -758,10 +761,11 @@ TEST_CASE("built-in rules", "[target_map]") {
auto serve_config = TestServeConfig::ReadFromEnvironment();
REQUIRE(serve_config);
+ LocalExecutionConfig local_exec_config{};
Auth auth{};
ApiBundle const apis{&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
/*repo_config=*/nullptr,
&auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -975,10 +979,11 @@ TEST_CASE("target reference", "[target_map]") {
auto serve_config = TestServeConfig::ReadFromEnvironment();
REQUIRE(serve_config);
+ LocalExecutionConfig local_exec_config{};
Auth auth{};
ApiBundle const apis{&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
/*repo_config=*/nullptr,
&auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -1125,10 +1130,11 @@ TEST_CASE("trees", "[target_map]") {
auto serve_config = TestServeConfig::ReadFromEnvironment();
REQUIRE(serve_config);
+ LocalExecutionConfig local_exec_config{};
Auth auth{};
ApiBundle const apis{&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
/*repo_config=*/nullptr,
&auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -1239,10 +1245,11 @@ TEST_CASE("RESULT error reporting", "[target_map]") {
auto serve_config = TestServeConfig::ReadFromEnvironment();
REQUIRE(serve_config);
+ LocalExecutionConfig local_exec_config{};
Auth auth{};
ApiBundle const apis{&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
/*repo_config=*/nullptr,
&auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -1412,10 +1419,11 @@ TEST_CASE("wrong arguments", "[target_map]") {
auto serve_config = TestServeConfig::ReadFromEnvironment();
REQUIRE(serve_config);
+ LocalExecutionConfig local_exec_config{};
Auth auth{};
ApiBundle const apis{&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
/*repo_config=*/nullptr,
&auth,
RemoteExecutionConfig::RemoteAddress()};
diff --git a/test/buildtool/execution_api/common/api_test.hpp b/test/buildtool/execution_api/common/api_test.hpp
index d43c850d..f9a814f7 100644
--- a/test/buildtool/execution_api/common/api_test.hpp
+++ b/test/buildtool/execution_api/common/api_test.hpp
@@ -32,7 +32,8 @@
using ApiFactory = std::function<IExecutionApi::Ptr()>;
using ExecProps = std::map<std::string, std::string>;
-inline void SetLauncher() {
+[[nodiscard]] static inline auto SetLauncher() noexcept
+ -> LocalExecutionConfig {
std::vector<std::string> launcher{"env"};
auto* env_path = std::getenv("PATH");
if (env_path != nullptr) {
@@ -41,10 +42,12 @@ inline void SetLauncher() {
else {
launcher.emplace_back("PATH=/bin:/usr/bin");
}
- if (not LocalExecutionConfig::SetLauncher(launcher)) {
- Logger::Log(LogLevel::Error, "Failure setting the local launcher.");
- std::exit(EXIT_FAILURE);
+ LocalExecutionConfig::Builder builder;
+ if (auto config = builder.SetLauncher(std::move(launcher)).Build()) {
+ return *std::move(config);
}
+ Logger::Log(LogLevel::Error, "Failure setting the local launcher.");
+ std::exit(EXIT_FAILURE);
}
[[nodiscard]] static inline auto GetTestDir(std::string const& test_name)
@@ -68,8 +71,6 @@ inline void SetLauncher() {
auto action = api->CreateAction(
*api->UploadTree({}), {"echo", "-n", test_content}, {}, {}, {}, props);
- SetLauncher();
-
SECTION("Cache execution result in action cache") {
action->SetCacheFlag(IExecutionAction::CacheFlag::CacheOutput);
diff --git a/test/buildtool/execution_api/local/local_api.test.cpp b/test/buildtool/execution_api/local/local_api.test.cpp
index 164226b9..6a6b899a 100644
--- a/test/buildtool/execution_api/local/local_api.test.cpp
+++ b/test/buildtool/execution_api/local/local_api.test.cpp
@@ -51,8 +51,8 @@ class FactoryApi final {
TEST_CASE("LocalAPI: No input, no output", "[execution_api]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
- FactoryApi api_factory(
- &storage_config.Get(), &storage, &LocalExecutionConfig::Instance());
+ auto const local_exec_config = SetLauncher();
+ FactoryApi api_factory(&storage_config.Get(), &storage, &local_exec_config);
TestNoInputNoOutput(api_factory, {}, /*is_hermetic=*/true);
}
@@ -60,8 +60,8 @@ TEST_CASE("LocalAPI: No input, no output", "[execution_api]") {
TEST_CASE("LocalAPI: No input, create output", "[execution_api]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
- FactoryApi api_factory(
- &storage_config.Get(), &storage, &LocalExecutionConfig::Instance());
+ auto const local_exec_config = SetLauncher();
+ FactoryApi api_factory(&storage_config.Get(), &storage, &local_exec_config);
TestNoInputCreateOutput(api_factory, {}, /*is_hermetic=*/true);
}
@@ -69,8 +69,8 @@ TEST_CASE("LocalAPI: No input, create output", "[execution_api]") {
TEST_CASE("LocalAPI: One input copied to output", "[execution_api]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
- FactoryApi api_factory(
- &storage_config.Get(), &storage, &LocalExecutionConfig::Instance());
+ auto const local_exec_config = SetLauncher();
+ FactoryApi api_factory(&storage_config.Get(), &storage, &local_exec_config);
TestOneInputCopiedToOutput(api_factory, {}, /*is_hermetic=*/true);
}
@@ -78,8 +78,8 @@ TEST_CASE("LocalAPI: One input copied to output", "[execution_api]") {
TEST_CASE("LocalAPI: Non-zero exit code, create output", "[execution_api]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
- FactoryApi api_factory(
- &storage_config.Get(), &storage, &LocalExecutionConfig::Instance());
+ auto const local_exec_config = SetLauncher();
+ FactoryApi api_factory(&storage_config.Get(), &storage, &local_exec_config);
TestNonZeroExitCodeCreateOutput(api_factory, {});
}
@@ -87,8 +87,8 @@ TEST_CASE("LocalAPI: Non-zero exit code, create output", "[execution_api]") {
TEST_CASE("LocalAPI: Retrieve two identical trees to path", "[execution_api]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
- FactoryApi api_factory(
- &storage_config.Get(), &storage, &LocalExecutionConfig::Instance());
+ auto const local_exec_config = SetLauncher();
+ FactoryApi api_factory(&storage_config.Get(), &storage, &local_exec_config);
TestRetrieveTwoIdenticalTreesToPath(
api_factory, {}, "two_trees", /*is_hermetic=*/true);
@@ -98,8 +98,8 @@ TEST_CASE("LocalAPI: Retrieve file and symlink with same content to path",
"[execution_api]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
- FactoryApi api_factory(
- &storage_config.Get(), &storage, &LocalExecutionConfig::Instance());
+ auto const local_exec_config = SetLauncher();
+ FactoryApi api_factory(&storage_config.Get(), &storage, &local_exec_config);
TestRetrieveFileAndSymlinkWithSameContentToPath(
api_factory, {}, "file_and_symlink", /*is_hermetic=*/true);
@@ -108,8 +108,8 @@ TEST_CASE("LocalAPI: Retrieve file and symlink with same content to path",
TEST_CASE("LocalAPI: Retrieve mixed blobs and trees", "[execution_api]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
- FactoryApi api_factory(
- &storage_config.Get(), &storage, &LocalExecutionConfig::Instance());
+ auto const local_exec_config = SetLauncher();
+ FactoryApi api_factory(&storage_config.Get(), &storage, &local_exec_config);
TestRetrieveMixedBlobsAndTrees(
api_factory, {}, "blobs_and_trees", /*is_hermetic=*/true);
@@ -118,8 +118,8 @@ TEST_CASE("LocalAPI: Retrieve mixed blobs and trees", "[execution_api]") {
TEST_CASE("LocalAPI: Create directory prior to execution", "[execution_api]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
- FactoryApi api_factory(
- &storage_config.Get(), &storage, &LocalExecutionConfig::Instance());
+ auto const local_exec_config = SetLauncher();
+ FactoryApi api_factory(&storage_config.Get(), &storage, &local_exec_config);
TestCreateDirPriorToExecution(api_factory, {}, /*is_hermetic=*/true);
}
diff --git a/test/buildtool/execution_api/local/local_execution.test.cpp b/test/buildtool/execution_api/local/local_execution.test.cpp
index e8489b33..72db2800 100644
--- a/test/buildtool/execution_api/local/local_execution.test.cpp
+++ b/test/buildtool/execution_api/local/local_execution.test.cpp
@@ -41,7 +41,8 @@ namespace {
"test/buildtool/execution_api/local";
}
-inline void SetLauncher() {
+[[nodiscard]] inline auto CreateLocalExecConfig() noexcept
+ -> LocalExecutionConfig {
std::vector<std::string> launcher{"env"};
auto* env_path = std::getenv("PATH");
if (env_path != nullptr) {
@@ -50,10 +51,12 @@ inline void SetLauncher() {
else {
launcher.emplace_back("PATH=/bin:/usr/bin");
}
- if (not LocalExecutionConfig::SetLauncher(launcher)) {
- Logger::Log(LogLevel::Error, "Failure setting the local launcher.");
- std::exit(EXIT_FAILURE);
+ LocalExecutionConfig::Builder builder;
+ if (auto config = builder.SetLauncher(std::move(launcher)).Build()) {
+ return *std::move(config);
}
+ Logger::Log(LogLevel::Error, "Failure setting the local launcher.");
+ std::exit(EXIT_FAILURE);
}
} // namespace
@@ -63,10 +66,9 @@ TEST_CASE("LocalExecution: No input, no output", "[execution_api]") {
auto const storage = Storage::Create(&storage_config.Get());
RepositoryConfig repo_config{};
- auto api = LocalApi(&storage_config.Get(),
- &storage,
- &LocalExecutionConfig::Instance(),
- &repo_config);
+ auto const local_exec_config = CreateLocalExecConfig();
+ auto api = LocalApi(
+ &storage_config.Get(), &storage, &local_exec_config, &repo_config);
std::string test_content("test");
std::vector<std::string> const cmdline = {"echo", "-n", test_content};
@@ -74,8 +76,6 @@ TEST_CASE("LocalExecution: No input, no output", "[execution_api]") {
api.CreateAction(*api.UploadTree({}), cmdline, {}, {}, {}, {});
REQUIRE(action);
- SetLauncher();
-
SECTION("Cache execution result in action cache") {
// run execution
action->SetCacheFlag(IExecutionAction::CacheFlag::CacheOutput);
@@ -114,10 +114,9 @@ TEST_CASE("LocalExecution: No input, no output, env variables used",
auto const storage = Storage::Create(&storage_config.Get());
RepositoryConfig repo_config{};
- auto api = LocalApi(&storage_config.Get(),
- &storage,
- &LocalExecutionConfig::Instance(),
- &repo_config);
+ auto const local_exec_config = CreateLocalExecConfig();
+ auto api = LocalApi(
+ &storage_config.Get(), &storage, &local_exec_config, &repo_config);
std::string test_content("test from env var");
std::vector<std::string> const cmdline = {
@@ -168,10 +167,9 @@ TEST_CASE("LocalExecution: No input, create output", "[execution_api]") {
auto const storage = Storage::Create(&storage_config.Get());
RepositoryConfig repo_config{};
- auto api = LocalApi(&storage_config.Get(),
- &storage,
- &LocalExecutionConfig::Instance(),
- &repo_config);
+ auto const local_exec_config = CreateLocalExecConfig();
+ auto api = LocalApi(
+ &storage_config.Get(), &storage, &local_exec_config, &repo_config);
std::string test_content("test");
auto test_digest = ArtifactDigest::Create<ObjectType::File>(test_content);
@@ -228,10 +226,9 @@ TEST_CASE("LocalExecution: One input copied to output", "[execution_api]") {
auto const storage = Storage::Create(&storage_config.Get());
RepositoryConfig repo_config{};
- auto api = LocalApi(&storage_config.Get(),
- &storage,
- &LocalExecutionConfig::Instance(),
- &repo_config);
+ auto const local_exec_config = CreateLocalExecConfig();
+ auto api = LocalApi(
+ &storage_config.Get(), &storage, &local_exec_config, &repo_config);
std::string test_content("test");
auto test_digest = ArtifactDigest::Create<ObjectType::File>(test_content);
@@ -301,10 +298,9 @@ TEST_CASE("LocalExecution: Cache failed action's result", "[execution_api]") {
auto const storage = Storage::Create(&storage_config.Get());
RepositoryConfig repo_config{};
- auto api = LocalApi(&storage_config.Get(),
- &storage,
- &LocalExecutionConfig::Instance(),
- &repo_config);
+ auto const local_exec_config = CreateLocalExecConfig();
+ auto api = LocalApi(
+ &storage_config.Get(), &storage, &local_exec_config, &repo_config);
auto flag = GetTestDir() / "flag";
std::vector<std::string> const cmdline = {
diff --git a/test/buildtool/execution_engine/executor/executor_api_local.test.cpp b/test/buildtool/execution_engine/executor/executor_api_local.test.cpp
index d8e9fd96..4fee58da 100644
--- a/test/buildtool/execution_engine/executor/executor_api_local.test.cpp
+++ b/test/buildtool/execution_engine/executor/executor_api_local.test.cpp
@@ -32,12 +32,11 @@ TEST_CASE("Executor<LocalApi>: Upload blob", "[executor]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
+ LocalExecutionConfig local_exec_config{};
RepositoryConfig repo_config{};
TestBlobUpload(&repo_config, [&] {
- return std::make_unique<LocalApi>(&storage_config.Get(),
- &storage,
- &LocalExecutionConfig::Instance(),
- &repo_config);
+ return std::make_unique<LocalApi>(
+ &storage_config.Get(), &storage, &local_exec_config, &repo_config);
});
}
@@ -45,6 +44,7 @@ TEST_CASE("Executor<LocalApi>: Compile hello world", "[executor]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
+ LocalExecutionConfig local_exec_config{};
RepositoryConfig repo_config{};
Statistics stats{};
Progress progress{};
@@ -57,7 +57,7 @@ TEST_CASE("Executor<LocalApi>: Compile hello world", "[executor]") {
[&] {
return std::make_unique<LocalApi>(&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
&repo_config);
},
&*auth_config);
@@ -67,6 +67,7 @@ TEST_CASE("Executor<LocalApi>: Compile greeter", "[executor]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
+ LocalExecutionConfig local_exec_config{};
RepositoryConfig repo_config{};
Statistics stats{};
Progress progress{};
@@ -79,7 +80,7 @@ TEST_CASE("Executor<LocalApi>: Compile greeter", "[executor]") {
[&] {
return std::make_unique<LocalApi>(&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
&repo_config);
},
&*auth_config);
@@ -89,6 +90,7 @@ TEST_CASE("Executor<LocalApi>: Upload and download trees", "[executor]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
+ LocalExecutionConfig local_exec_config{};
RepositoryConfig repo_config{};
Statistics stats{};
Progress progress{};
@@ -101,7 +103,7 @@ TEST_CASE("Executor<LocalApi>: Upload and download trees", "[executor]") {
[&] {
return std::make_unique<LocalApi>(&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
&repo_config);
},
&*auth_config);
@@ -111,6 +113,7 @@ TEST_CASE("Executor<LocalApi>: Retrieve output directories", "[executor]") {
auto const storage_config = TestStorageConfig::Create();
auto const storage = Storage::Create(&storage_config.Get());
+ LocalExecutionConfig local_exec_config{};
RepositoryConfig repo_config{};
Statistics stats{};
Progress progress{};
@@ -123,7 +126,7 @@ TEST_CASE("Executor<LocalApi>: Retrieve output directories", "[executor]") {
[&] {
return std::make_unique<LocalApi>(&storage_config.Get(),
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
&repo_config);
},
&*auth_config);
diff --git a/test/buildtool/graph_traverser/graph_traverser.test.hpp b/test/buildtool/graph_traverser/graph_traverser.test.hpp
index ae07d347..4d47ef39 100644
--- a/test/buildtool/graph_traverser/graph_traverser.test.hpp
+++ b/test/buildtool/graph_traverser/graph_traverser.test.hpp
@@ -137,7 +137,8 @@ class TestProject {
}
};
-inline void SetLauncher() {
+[[nodiscard]] inline auto CreateLocalExecConfig() noexcept
+ -> LocalExecutionConfig {
std::vector<std::string> launcher{"env"};
auto* env_path = std::getenv("PATH");
if (env_path != nullptr) {
@@ -146,10 +147,12 @@ inline void SetLauncher() {
else {
launcher.emplace_back("PATH=/bin:/usr/bin");
}
- if (not LocalExecutionConfig::SetLauncher(launcher)) {
- Logger::Log(LogLevel::Error, "Failure setting the local launcher.");
- std::exit(EXIT_FAILURE);
+ LocalExecutionConfig::Builder builder;
+ if (auto config = builder.SetLauncher(std::move(launcher)).Build()) {
+ return *std::move(config);
}
+ Logger::Log(LogLevel::Error, "Failure setting the local launcher.");
+ std::exit(EXIT_FAILURE);
}
} // namespace
@@ -161,13 +164,13 @@ inline void SetLauncher() {
bool is_hermetic = true) {
TestProject p("hello_world_copy_message");
- SetLauncher();
+ auto const local_exec_config = CreateLocalExecConfig();
auto const clargs = p.CmdLineArgs();
Statistics stats{};
Progress progress{};
ApiBundle const apis{&storage_config,
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
p.GetRepoConfig(),
auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -199,7 +202,7 @@ inline void SetLauncher() {
auto const clargs_exec = p.CmdLineArgs("_entry_points_get_executable");
ApiBundle const apis{&storage_config,
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
p.GetRepoConfig(),
auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -237,13 +240,13 @@ inline void SetLauncher() {
bool is_hermetic = true) {
TestProject p("copy_local_file");
- SetLauncher();
+ auto const local_exec_config = CreateLocalExecConfig();
auto const clargs = p.CmdLineArgs();
Statistics stats{};
Progress progress{};
ApiBundle const apis{&storage_config,
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
p.GetRepoConfig(),
auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -275,13 +278,13 @@ inline void SetLauncher() {
bool is_hermetic = true) {
TestProject p("sequence_printer_build_library_only");
- SetLauncher();
+ auto const local_exec_config = CreateLocalExecConfig();
auto const clargs = p.CmdLineArgs();
Statistics stats{};
Progress progress{};
ApiBundle const apis{&storage_config,
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
p.GetRepoConfig(),
auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -333,14 +336,14 @@ inline void SetLauncher() {
bool is_hermetic = true) {
TestProject full_hello_world("hello_world_copy_message");
- SetLauncher();
+ auto const local_exec_config = CreateLocalExecConfig();
auto const clargs_update_cpp =
full_hello_world.CmdLineArgs("_entry_points_upload_source");
Statistics stats{};
Progress progress{};
ApiBundle const apis{&storage_config,
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
full_hello_world.GetRepoConfig(),
auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -398,12 +401,12 @@ static void TestBlobsUploadedAndUsed(StorageConfig const& storage_config,
TestProject p("use_uploaded_blobs");
auto const clargs = p.CmdLineArgs();
- SetLauncher();
+ auto const local_exec_config = CreateLocalExecConfig();
Statistics stats{};
Progress progress{};
ApiBundle const apis{&storage_config,
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
p.GetRepoConfig(),
auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -444,12 +447,12 @@ static void TestEnvironmentVariablesSetAndUsed(
TestProject p("use_env_variables");
auto const clargs = p.CmdLineArgs();
- SetLauncher();
+ auto const local_exec_config = CreateLocalExecConfig();
Statistics stats{};
Progress progress{};
ApiBundle const apis{&storage_config,
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
p.GetRepoConfig(),
auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -489,12 +492,12 @@ static void TestTreesUsed(StorageConfig const& storage_config,
TestProject p("use_trees");
auto const clargs = p.CmdLineArgs();
- SetLauncher();
+ auto const local_exec_config = CreateLocalExecConfig();
Statistics stats{};
Progress progress{};
ApiBundle const apis{&storage_config,
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
p.GetRepoConfig(),
auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -534,12 +537,12 @@ static void TestNestedTreesUsed(StorageConfig const& storage_config,
TestProject p("use_nested_trees");
auto const clargs = p.CmdLineArgs();
- SetLauncher();
+ auto const local_exec_config = CreateLocalExecConfig();
Statistics stats{};
Progress progress{};
ApiBundle const apis{&storage_config,
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
p.GetRepoConfig(),
auth,
RemoteExecutionConfig::RemoteAddress()};
@@ -578,17 +581,17 @@ static void TestFlakyHelloWorldDetected(StorageConfig const& storage_config,
bool /*is_hermetic*/ = true) {
TestProject p("flaky_hello_world");
+ auto const local_exec_config = CreateLocalExecConfig();
Statistics stats{};
Progress progress{};
ApiBundle const apis{&storage_config,
&storage,
- &LocalExecutionConfig::Instance(),
+ &local_exec_config,
p.GetRepoConfig(),
auth,
RemoteExecutionConfig::RemoteAddress()};
{
- SetLauncher();
auto clargs = p.CmdLineArgs("_entry_points_ctimes");
GraphTraverser const gt{clargs.gtargs,
p.GetRepoConfig(),