summaryrefslogtreecommitdiff
path: root/test/buildtool/build_engine/base_maps/rule_map.test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/buildtool/build_engine/base_maps/rule_map.test.cpp')
-rw-r--r--test/buildtool/build_engine/base_maps/rule_map.test.cpp21
1 files changed, 12 insertions, 9 deletions
diff --git a/test/buildtool/build_engine/base_maps/rule_map.test.cpp b/test/buildtool/build_engine/base_maps/rule_map.test.cpp
index 4235d1f1..7a3a021f 100644
--- a/test/buildtool/build_engine/base_maps/rule_map.test.cpp
+++ b/test/buildtool/build_engine/base_maps/rule_map.test.cpp
@@ -14,11 +14,13 @@
#include <filesystem>
#include <functional>
+#include <memory>
#include "catch2/catch_test_macros.hpp"
#include "src/buildtool/build_engine/base_maps/expression_map.hpp"
#include "src/buildtool/build_engine/base_maps/json_file_map.hpp"
#include "src/buildtool/build_engine/base_maps/rule_map.hpp"
+#include "src/buildtool/common/repository_config.hpp"
#include "src/buildtool/multithreading/task_system.hpp"
#include "test/buildtool/build_engine/base_maps/test_repo.hpp"
@@ -26,7 +28,7 @@ namespace {
using namespace BuildMaps::Base; // NOLINT
-void SetupConfig(bool use_git) {
+auto SetupConfig(bool use_git) -> RepositoryConfig {
auto root = FileRoot{kBasePath / "data_rule"};
if (use_git) {
auto repo_path = CreateTestRepo();
@@ -35,19 +37,20 @@ void SetupConfig(bool use_git) {
REQUIRE(git_root);
root = std::move(*git_root);
}
- RepositoryConfig::Instance().Reset();
- RepositoryConfig::Instance().SetInfo(
- "", RepositoryConfig::RepositoryInfo{root});
+ RepositoryConfig repo_config{};
+ repo_config.SetInfo("", RepositoryConfig::RepositoryInfo{root});
+ return repo_config;
}
auto ReadUserRule(EntityName const& id,
UserRuleMap::Consumer value_checker,
bool use_git = false) -> bool {
- SetupConfig(use_git);
- auto expr_file_map = CreateExpressionFileMap(0);
- auto expr_func_map = CreateExpressionMap(&expr_file_map);
- auto rule_file_map = CreateRuleFileMap(0);
- auto user_rule_map = CreateRuleMap(&rule_file_map, &expr_func_map);
+ auto repo_config = SetupConfig(use_git);
+ auto expr_file_map = CreateExpressionFileMap(&repo_config, 0);
+ auto expr_func_map = CreateExpressionMap(&expr_file_map, &repo_config);
+ auto rule_file_map = CreateRuleFileMap(&repo_config, 0);
+ auto user_rule_map =
+ CreateRuleMap(&rule_file_map, &expr_func_map, &repo_config);
bool success{true};
{