summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/buildtool/build_engine/target_map/TARGETS1
-rw-r--r--src/buildtool/build_engine/target_map/built_in_rules.cpp20
-rw-r--r--src/buildtool/build_engine/target_map/built_in_rules.hpp2
-rw-r--r--src/buildtool/build_engine/target_map/export.cpp4
-rw-r--r--src/buildtool/build_engine/target_map/export.hpp2
-rw-r--r--src/buildtool/build_engine/target_map/target_map.cpp16
-rw-r--r--src/buildtool/build_engine/target_map/target_map.hpp6
-rw-r--r--src/buildtool/main/TARGETS1
-rw-r--r--src/buildtool/main/analyse.cpp2
-rw-r--r--src/buildtool/main/analyse.hpp2
-rw-r--r--src/buildtool/main/main.cpp2
-rw-r--r--src/buildtool/serve_api/serve_service/target.cpp1
-rw-r--r--test/buildtool/build_engine/target_map/TARGETS2
-rw-r--r--test/buildtool/build_engine/target_map/target_map.test.cpp152
14 files changed, 137 insertions, 76 deletions
diff --git a/src/buildtool/build_engine/target_map/TARGETS b/src/buildtool/build_engine/target_map/TARGETS
index 5886f784..b753e503 100644
--- a/src/buildtool/build_engine/target_map/TARGETS
+++ b/src/buildtool/build_engine/target_map/TARGETS
@@ -47,6 +47,7 @@
, ["src/buildtool/build_engine/base_maps", "targets_file_map"]
, ["src/buildtool/common", "config"]
, ["src/buildtool/multithreading", "async_map_consumer"]
+ , ["src/buildtool/storage", "storage"]
, ["@", "gsl", "", "gsl"]
, ["@", "json", "", "json"]
]
diff --git a/src/buildtool/build_engine/target_map/built_in_rules.cpp b/src/buildtool/build_engine/target_map/built_in_rules.cpp
index 19a12105..d28a6ed9 100644
--- a/src/buildtool/build_engine/target_map/built_in_rules.cpp
+++ b/src/buildtool/build_engine/target_map/built_in_rules.cpp
@@ -339,6 +339,7 @@ void FileGenRule(
const nlohmann::json& desc_json,
const BuildMaps::Target::ConfiguredTarget& key,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ [[maybe_unused]] const ActiveTargetCache& /*target_cache*/,
const BuildMaps::Target::TargetMap::SubCallerPtr& subcaller,
const BuildMaps::Target::TargetMap::SetterPtr& setter,
const BuildMaps::Target::TargetMap::LoggerPtr& logger,
@@ -357,6 +358,7 @@ void SymlinkRule(
const nlohmann::json& desc_json,
const BuildMaps::Target::ConfiguredTarget& key,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ [[maybe_unused]] const ActiveTargetCache& /*target_cache*/,
const BuildMaps::Target::TargetMap::SubCallerPtr& subcaller,
const BuildMaps::Target::TargetMap::SetterPtr& setter,
const BuildMaps::Target::TargetMap::LoggerPtr& logger,
@@ -484,6 +486,7 @@ void TreeRule(
const nlohmann::json& desc_json,
const BuildMaps::Target::ConfiguredTarget& key,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ [[maybe_unused]] const ActiveTargetCache& /*target_cache*/,
const BuildMaps::Target::TargetMap::SubCallerPtr& subcaller,
const BuildMaps::Target::TargetMap::SetterPtr& setter,
const BuildMaps::Target::TargetMap::LoggerPtr& logger,
@@ -732,6 +735,7 @@ void InstallRule(
const nlohmann::json& desc_json,
const BuildMaps::Target::ConfiguredTarget& key,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ [[maybe_unused]] const ActiveTargetCache& /*target_cache*/,
const BuildMaps::Target::TargetMap::SubCallerPtr& subcaller,
const BuildMaps::Target::TargetMap::SetterPtr& setter,
const BuildMaps::Target::TargetMap::LoggerPtr& logger,
@@ -1317,6 +1321,7 @@ void GenericRule(
const nlohmann::json& desc_json,
const BuildMaps::Target::ConfiguredTarget& key,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ [[maybe_unused]] const ActiveTargetCache& /*target_cache*/,
const BuildMaps::Target::TargetMap::SubCallerPtr& subcaller,
const BuildMaps::Target::TargetMap::SetterPtr& setter,
const BuildMaps::Target::TargetMap::LoggerPtr& logger,
@@ -1394,6 +1399,7 @@ void ConfigureRule(
const nlohmann::json& desc_json,
const BuildMaps::Target::ConfiguredTarget& key,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ [[maybe_unused]] const ActiveTargetCache& /*target_cache*/,
const BuildMaps::Target::TargetMap::SubCallerPtr& subcaller,
const BuildMaps::Target::TargetMap::SetterPtr& setter,
const BuildMaps::Target::TargetMap::LoggerPtr& logger,
@@ -1533,7 +1539,8 @@ auto const kBuiltIns = std::unordered_map<
std::function<void(
const nlohmann::json&,
const BuildMaps::Target::ConfiguredTarget&,
- [[maybe_unused]] const gsl::not_null<RepositoryConfig*>&,
+ const gsl::not_null<RepositoryConfig*>&,
+ const ActiveTargetCache&,
const BuildMaps::Target::TargetMap::SubCallerPtr&,
const BuildMaps::Target::TargetMap::SetterPtr&,
const BuildMaps::Target::TargetMap::LoggerPtr&,
@@ -1564,6 +1571,7 @@ auto HandleBuiltin(
const nlohmann::json& desc,
const BuildMaps::Target::ConfiguredTarget& key,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ const ActiveTargetCache& target_cache,
const BuildMaps::Target::TargetMap::SubCallerPtr& subcaller,
const BuildMaps::Target::TargetMap::SetterPtr& setter,
const BuildMaps::Target::TargetMap::LoggerPtr& logger,
@@ -1586,8 +1594,14 @@ auto HandleBuiltin(
msg),
fatal);
});
- (it->second)(
- desc, key, repo_config, subcaller, setter, target_logger, result_map);
+ (it->second)(desc,
+ key,
+ repo_config,
+ target_cache,
+ subcaller,
+ setter,
+ target_logger,
+ result_map);
return true;
}
} // namespace BuildMaps::Target
diff --git a/src/buildtool/build_engine/target_map/built_in_rules.hpp b/src/buildtool/build_engine/target_map/built_in_rules.hpp
index 5f815130..e3e2f220 100644
--- a/src/buildtool/build_engine/target_map/built_in_rules.hpp
+++ b/src/buildtool/build_engine/target_map/built_in_rules.hpp
@@ -21,6 +21,7 @@
#include "src/buildtool/build_engine/target_map/result_map.hpp"
#include "src/buildtool/build_engine/target_map/target_map.hpp"
#include "src/buildtool/common/repository_config.hpp"
+#include "src/buildtool/storage/target_cache.hpp"
namespace BuildMaps::Target {
auto HandleBuiltin(
@@ -28,6 +29,7 @@ auto HandleBuiltin(
const nlohmann::json& desc,
const BuildMaps::Target::ConfiguredTarget& key,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ const ActiveTargetCache& target_cache,
const BuildMaps::Target::TargetMap::SubCallerPtr& subcaller,
const BuildMaps::Target::TargetMap::SetterPtr& setter,
const BuildMaps::Target::TargetMap::LoggerPtr& logger,
diff --git a/src/buildtool/build_engine/target_map/export.cpp b/src/buildtool/build_engine/target_map/export.cpp
index 25e78d32..c9aed0e3 100644
--- a/src/buildtool/build_engine/target_map/export.cpp
+++ b/src/buildtool/build_engine/target_map/export.cpp
@@ -97,6 +97,7 @@ void ExportRule(
const nlohmann::json& desc_json,
const BuildMaps::Target::ConfiguredTarget& key,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ const ActiveTargetCache& target_cache,
const BuildMaps::Target::TargetMap::SubCallerPtr& subcaller,
const BuildMaps::Target::TargetMap::SetterPtr& setter,
const BuildMaps::Target::TargetMap::LoggerPtr& logger,
@@ -117,8 +118,7 @@ void ExportRule(
if (target_cache_key) {
// first try to get value from local target cache
- auto target_cache_value =
- Storage::Instance().TargetCache().Read(*target_cache_key);
+ auto target_cache_value = target_cache.Read(*target_cache_key);
bool from_just_serve{false};
#ifndef BOOTSTRAP_BUILD_TOOL
diff --git a/src/buildtool/build_engine/target_map/export.hpp b/src/buildtool/build_engine/target_map/export.hpp
index aa84f0b4..7f470706 100644
--- a/src/buildtool/build_engine/target_map/export.hpp
+++ b/src/buildtool/build_engine/target_map/export.hpp
@@ -21,10 +21,12 @@
#include "src/buildtool/build_engine/target_map/result_map.hpp"
#include "src/buildtool/build_engine/target_map/target_map.hpp"
#include "src/buildtool/common/repository_config.hpp"
+#include "src/buildtool/storage/target_cache.hpp"
void ExportRule(const nlohmann::json& desc_json,
const BuildMaps::Target::ConfiguredTarget& key,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ const ActiveTargetCache& target_cache,
const BuildMaps::Target::TargetMap::SubCallerPtr& subcaller,
const BuildMaps::Target::TargetMap::SetterPtr& setter,
const BuildMaps::Target::TargetMap::LoggerPtr& logger,
diff --git a/src/buildtool/build_engine/target_map/target_map.cpp b/src/buildtool/build_engine/target_map/target_map.cpp
index 2322ba54..4d28ac6a 100644
--- a/src/buildtool/build_engine/target_map/target_map.cpp
+++ b/src/buildtool/build_engine/target_map/target_map.cpp
@@ -1237,6 +1237,7 @@ void withRuleDefinition(
void withTargetsFile(
const BuildMaps::Target::ConfiguredTarget& key,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ const ActiveTargetCache& target_cache,
const nlohmann::json& targets_file,
const gsl::not_null<BuildMaps::Base::SourceTargetMap*>& source_target,
const gsl::not_null<BuildMaps::Base::UserRuleMap*>& rule_map,
@@ -1275,6 +1276,7 @@ void withTargetsFile(
desc,
key,
repo_config,
+ target_cache,
subcaller,
setter,
logger,
@@ -1657,6 +1659,7 @@ auto CreateTargetMap(
const gsl::not_null<AbsentTargetMap*>& absent_target_map,
const gsl::not_null<ResultTargetMap*>& result_map,
const gsl::not_null<RepositoryConfig*>& repo_config,
+ const ActiveTargetCache& target_cache,
std::size_t jobs) -> TargetMap {
auto target_reader = [source_target_map,
targets_file_map,
@@ -1664,11 +1667,12 @@ auto CreateTargetMap(
directory_entries_map,
absent_target_map,
result_map,
- repo_config](auto ts,
- auto setter,
- auto logger,
- auto subcaller,
- auto key) {
+ repo_config,
+ target_cache](auto ts,
+ auto setter,
+ auto logger,
+ auto subcaller,
+ auto key) {
if (key.target.IsAnonymousTarget()) {
withTargetNode(key,
repo_config,
@@ -1803,6 +1807,7 @@ auto CreateTargetMap(
{key.target.ToModule()},
[key,
repo_config,
+ target_cache,
source_target_map,
rule_map,
ts,
@@ -1812,6 +1817,7 @@ auto CreateTargetMap(
result_map](auto values) {
withTargetsFile(key,
repo_config,
+ target_cache,
*values[0],
source_target_map,
rule_map,
diff --git a/src/buildtool/build_engine/target_map/target_map.hpp b/src/buildtool/build_engine/target_map/target_map.hpp
index bcd902cc..2832eb35 100644
--- a/src/buildtool/build_engine/target_map/target_map.hpp
+++ b/src/buildtool/build_engine/target_map/target_map.hpp
@@ -29,6 +29,7 @@
#include "src/buildtool/build_engine/target_map/result_map.hpp"
#include "src/buildtool/common/repository_config.hpp"
#include "src/buildtool/multithreading/async_map_consumer.hpp"
+#include "src/buildtool/storage/target_cache.hpp"
namespace BuildMaps::Target {
@@ -39,9 +40,10 @@ auto CreateTargetMap(
const gsl::not_null<BuildMaps::Base::TargetsFileMap*>&,
const gsl::not_null<BuildMaps::Base::UserRuleMap*>&,
const gsl::not_null<BuildMaps::Base::DirectoryEntriesMap*>&,
- [[maybe_unused]] const gsl::not_null<AbsentTargetMap*>&,
+ const gsl::not_null<AbsentTargetMap*>&,
const gsl::not_null<ResultTargetMap*>&,
- [[maybe_unused]] const gsl::not_null<RepositoryConfig*>&,
+ const gsl::not_null<RepositoryConfig*>&,
+ const ActiveTargetCache&,
std::size_t jobs = 0) -> TargetMap;
// use explicit cast to std::function to allow template deduction when used
diff --git a/src/buildtool/main/TARGETS b/src/buildtool/main/TARGETS
index bedcdcce..fd2adf7c 100644
--- a/src/buildtool/main/TARGETS
+++ b/src/buildtool/main/TARGETS
@@ -117,6 +117,7 @@
, ["src/buildtool/build_engine/target_map", "result_map"]
, ["src/buildtool/build_engine/analysed_target", "target"]
, ["src/buildtool/common", "config"]
+ , ["src/buildtool/storage", "storage"]
]
, "stage": ["src", "buildtool", "main"]
, "private-deps":
diff --git a/src/buildtool/main/analyse.cpp b/src/buildtool/main/analyse.cpp
index 6e8aeccc..6ea61de2 100644
--- a/src/buildtool/main/analyse.cpp
+++ b/src/buildtool/main/analyse.cpp
@@ -96,6 +96,7 @@ namespace Target = BuildMaps::Target;
const Target::ConfiguredTarget& id,
gsl::not_null<Target::ResultTargetMap*> const& result_map,
gsl::not_null<RepositoryConfig*> const& repo_config,
+ ActiveTargetCache const& target_cache,
std::size_t jobs,
std::optional<std::string> const& request_action_input)
-> std::optional<AnalysisResult> {
@@ -119,6 +120,7 @@ namespace Target = BuildMaps::Target;
&absent_target_map,
result_map,
repo_config,
+ target_cache,
jobs);
Logger::Log(LogLevel::Info, "Requested target is {}", id.ToString());
AnalysedTargetPtr target{};
diff --git a/src/buildtool/main/analyse.hpp b/src/buildtool/main/analyse.hpp
index 82c2ba3e..a7e1cb08 100644
--- a/src/buildtool/main/analyse.hpp
+++ b/src/buildtool/main/analyse.hpp
@@ -20,6 +20,7 @@
#include "src/buildtool/build_engine/target_map/result_map.hpp"
#include "src/buildtool/common/cli.hpp"
#include "src/buildtool/common/repository_config.hpp"
+#include "src/buildtool/storage/target_cache.hpp"
struct AnalysisResult {
BuildMaps::Target::ConfiguredTarget id;
@@ -31,6 +32,7 @@ struct AnalysisResult {
const BuildMaps::Target::ConfiguredTarget& id,
gsl::not_null<BuildMaps::Target::ResultTargetMap*> const& result_map,
gsl::not_null<RepositoryConfig*> const& repo_config,
+ ActiveTargetCache const& target_cache,
std::size_t jobs,
std::optional<std::string> const& request_action_input)
-> std::optional<AnalysisResult>;
diff --git a/src/buildtool/main/main.cpp b/src/buildtool/main/main.cpp
index 78ec57a7..642251c4 100644
--- a/src/buildtool/main/main.cpp
+++ b/src/buildtool/main/main.cpp
@@ -40,6 +40,7 @@
#include "src/buildtool/main/install_cas.hpp"
#include "src/buildtool/storage/config.hpp"
#include "src/buildtool/storage/garbage_collector.hpp"
+#include "src/buildtool/storage/storage.hpp"
#include "src/buildtool/storage/target_cache.hpp"
#ifndef BOOTSTRAP_BUILD_TOOL
#include "src/buildtool/auth/authentication.hpp"
@@ -997,6 +998,7 @@ auto main(int argc, char* argv[]) -> int {
AnalyseTarget(id,
&result_map,
&repo_config,
+ Storage::Instance().TargetCache(),
arguments.common.jobs,
arguments.analysis.request_action_input);
if (result) {
diff --git a/src/buildtool/serve_api/serve_service/target.cpp b/src/buildtool/serve_api/serve_service/target.cpp
index e7a4bf31..97b75b53 100644
--- a/src/buildtool/serve_api/serve_service/target.cpp
+++ b/src/buildtool/serve_api/serve_service/target.cpp
@@ -405,6 +405,7 @@ auto TargetService::ServeTarget(
auto result = AnalyseTarget(configured_target,
&result_map,
&repository_config,
+ *tc,
RemoteServeConfig::Jobs(),
std::nullopt /*request_action_input*/);
diff --git a/test/buildtool/build_engine/target_map/TARGETS b/test/buildtool/build_engine/target_map/TARGETS
index e83c22d1..8f894ca1 100644
--- a/test/buildtool/build_engine/target_map/TARGETS
+++ b/test/buildtool/build_engine/target_map/TARGETS
@@ -23,6 +23,8 @@
, ["@", "src", "src/buildtool/build_engine/base_maps", "source_map"]
, ["@", "src", "src/buildtool/build_engine/base_maps", "targets_file_map"]
, ["@", "src", "src/buildtool/build_engine/target_map", "target_map"]
+ , ["@", "src", "src/buildtool/storage", "storage"]
+ , ["utils", "local_hermeticity"]
]
, "stage": ["test", "buildtool", "build_engine", "target_map"]
}
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 14701f6c..dd7c19a9 100644
--- a/test/buildtool/build_engine/target_map/target_map.test.cpp
+++ b/test/buildtool/build_engine/target_map/target_map.test.cpp
@@ -25,6 +25,8 @@
#include "src/buildtool/build_engine/target_map/target_map.hpp"
#include "src/buildtool/multithreading/async_map_consumer.hpp"
#include "src/buildtool/multithreading/task_system.hpp"
+#include "src/buildtool/storage/storage.hpp"
+#include "test/utils/hermeticity/local.hpp"
namespace {
@@ -64,7 +66,7 @@ auto SetupConfig() -> RepositoryConfig {
} // namespace
-TEST_CASE("simple targets") {
+TEST_CASE_METHOD(HermeticLocalTestFixture, "simple targets", "[target_map]") {
auto repo_config = SetupConfig();
auto directory_entries =
BuildMaps::Base::CreateDirectoryEntriesMap(&repo_config);
@@ -82,13 +84,15 @@ TEST_CASE("simple targets") {
BuildMaps::Target::ResultTargetMap result_map{0};
auto absent_target_map =
BuildMaps::Target::CreateAbsentTargetMap(&result_map, &repo_config, 0);
- auto target_map = BuildMaps::Target::CreateTargetMap(&source,
- &targets_file_map,
- &rule_map,
- &directory_entries,
- &absent_target_map,
- &result_map,
- &repo_config);
+ auto target_map =
+ BuildMaps::Target::CreateTargetMap(&source,
+ &targets_file_map,
+ &rule_map,
+ &directory_entries,
+ &absent_target_map,
+ &result_map,
+ &repo_config,
+ Storage::Instance().TargetCache());
AnalysedTargetPtr result;
bool error{false};
@@ -409,7 +413,9 @@ TEST_CASE("simple targets") {
}
}
-TEST_CASE("configuration deduplication") {
+TEST_CASE_METHOD(HermeticLocalTestFixture,
+ "configuration deduplication",
+ "[target_map]") {
auto repo_config = SetupConfig();
auto directory_entries =
BuildMaps::Base::CreateDirectoryEntriesMap(&repo_config);
@@ -427,13 +433,15 @@ TEST_CASE("configuration deduplication") {
BuildMaps::Target::ResultTargetMap result_map{0};
auto absent_target_map =
BuildMaps::Target::CreateAbsentTargetMap(&result_map, &repo_config, 0);
- auto target_map = BuildMaps::Target::CreateTargetMap(&source,
- &targets_file_map,
- &rule_map,
- &directory_entries,
- &absent_target_map,
- &result_map,
- &repo_config);
+ auto target_map =
+ BuildMaps::Target::CreateTargetMap(&source,
+ &targets_file_map,
+ &rule_map,
+ &directory_entries,
+ &absent_target_map,
+ &result_map,
+ &repo_config,
+ Storage::Instance().TargetCache());
std::vector<AnalysedTargetPtr> result;
bool error{false};
@@ -476,7 +484,9 @@ TEST_CASE("configuration deduplication") {
CHECK(analysis_result.actions.size() == 2);
}
-TEST_CASE("generator functions in string arguments") {
+TEST_CASE_METHOD(HermeticLocalTestFixture,
+ "generator functions in string arguments",
+ "[target_map]") {
auto repo_config = SetupConfig();
auto directory_entries =
BuildMaps::Base::CreateDirectoryEntriesMap(&repo_config);
@@ -494,13 +504,15 @@ TEST_CASE("generator functions in string arguments") {
BuildMaps::Target::ResultTargetMap result_map{0};
auto absent_target_map =
BuildMaps::Target::CreateAbsentTargetMap(&result_map, &repo_config, 0);
- auto target_map = BuildMaps::Target::CreateTargetMap(&source,
- &targets_file_map,
- &rule_map,
- &directory_entries,
- &absent_target_map,
- &result_map,
- &repo_config);
+ auto target_map =
+ BuildMaps::Target::CreateTargetMap(&source,
+ &targets_file_map,
+ &rule_map,
+ &directory_entries,
+ &absent_target_map,
+ &result_map,
+ &repo_config,
+ Storage::Instance().TargetCache());
AnalysedTargetPtr result;
bool error{false};
@@ -556,7 +568,7 @@ TEST_CASE("generator functions in string arguments") {
}
}
-TEST_CASE("built-in rules") {
+TEST_CASE_METHOD(HermeticLocalTestFixture, "built-in rules", "[target_map]") {
auto repo_config = SetupConfig();
auto directory_entries =
BuildMaps::Base::CreateDirectoryEntriesMap(&repo_config);
@@ -574,13 +586,15 @@ TEST_CASE("built-in rules") {
BuildMaps::Target::ResultTargetMap result_map{0};
auto absent_target_map =
BuildMaps::Target::CreateAbsentTargetMap(&result_map, &repo_config, 0);
- auto target_map = BuildMaps::Target::CreateTargetMap(&source,
- &targets_file_map,
- &rule_map,
- &directory_entries,
- &absent_target_map,
- &result_map,
- &repo_config);
+ auto target_map =
+ BuildMaps::Target::CreateTargetMap(&source,
+ &targets_file_map,
+ &rule_map,
+ &directory_entries,
+ &absent_target_map,
+ &result_map,
+ &repo_config,
+ Storage::Instance().TargetCache());
AnalysedTargetPtr result;
bool error{false};
std::string error_msg;
@@ -746,7 +760,7 @@ TEST_CASE("built-in rules") {
}
}
-TEST_CASE("target reference") {
+TEST_CASE_METHOD(HermeticLocalTestFixture, "target reference", "[target_map]") {
auto repo_config = SetupConfig();
auto directory_entries =
BuildMaps::Base::CreateDirectoryEntriesMap(&repo_config);
@@ -764,13 +778,15 @@ TEST_CASE("target reference") {
BuildMaps::Target::ResultTargetMap result_map{0};
auto absent_target_map =
BuildMaps::Target::CreateAbsentTargetMap(&result_map, &repo_config, 0);
- auto target_map = BuildMaps::Target::CreateTargetMap(&source,
- &targets_file_map,
- &rule_map,
- &directory_entries,
- &absent_target_map,
- &result_map,
- &repo_config);
+ auto target_map =
+ BuildMaps::Target::CreateTargetMap(&source,
+ &targets_file_map,
+ &rule_map,
+ &directory_entries,
+ &absent_target_map,
+ &result_map,
+ &repo_config,
+ Storage::Instance().TargetCache());
AnalysedTargetPtr result;
bool error{false};
@@ -869,7 +885,7 @@ TEST_CASE("target reference") {
}
}
-TEST_CASE("trees") {
+TEST_CASE_METHOD(HermeticLocalTestFixture, "trees", "[target_map]") {
auto repo_config = SetupConfig();
auto directory_entries =
BuildMaps::Base::CreateDirectoryEntriesMap(&repo_config);
@@ -887,13 +903,15 @@ TEST_CASE("trees") {
BuildMaps::Target::ResultTargetMap result_map{0};
auto absent_target_map =
BuildMaps::Target::CreateAbsentTargetMap(&result_map, &repo_config, 0);
- auto target_map = BuildMaps::Target::CreateTargetMap(&source,
- &targets_file_map,
- &rule_map,
- &directory_entries,
- &absent_target_map,
- &result_map,
- &repo_config);
+ auto target_map =
+ BuildMaps::Target::CreateTargetMap(&source,
+ &targets_file_map,
+ &rule_map,
+ &directory_entries,
+ &absent_target_map,
+ &result_map,
+ &repo_config,
+ Storage::Instance().TargetCache());
AnalysedTargetPtr result;
bool error{false};
@@ -956,7 +974,9 @@ TEST_CASE("trees") {
}
}
-TEST_CASE("RESULT error reporting") {
+TEST_CASE_METHOD(HermeticLocalTestFixture,
+ "RESULT error reporting",
+ "[target_map]") {
auto repo_config = SetupConfig();
auto directory_entries =
BuildMaps::Base::CreateDirectoryEntriesMap(&repo_config);
@@ -974,13 +994,15 @@ TEST_CASE("RESULT error reporting") {
BuildMaps::Target::ResultTargetMap result_map{0};
auto absent_target_map =
BuildMaps::Target::CreateAbsentTargetMap(&result_map, &repo_config, 0);
- auto target_map = BuildMaps::Target::CreateTargetMap(&source,
- &targets_file_map,
- &rule_map,
- &directory_entries,
- &absent_target_map,
- &result_map,
- &repo_config);
+ auto target_map =
+ BuildMaps::Target::CreateTargetMap(&source,
+ &targets_file_map,
+ &rule_map,
+ &directory_entries,
+ &absent_target_map,
+ &result_map,
+ &repo_config,
+ Storage::Instance().TargetCache());
AnalysedTargetPtr result;
bool error{false};
@@ -1102,7 +1124,7 @@ TEST_CASE("RESULT error reporting") {
}
}
-TEST_CASE("wrong arguments") {
+TEST_CASE_METHOD(HermeticLocalTestFixture, "wrong arguments", "[target_map]") {
auto repo_config = SetupConfig();
auto directory_entries =
BuildMaps::Base::CreateDirectoryEntriesMap(&repo_config);
@@ -1120,13 +1142,15 @@ TEST_CASE("wrong arguments") {
BuildMaps::Target::ResultTargetMap result_map{0};
auto absent_target_map =
BuildMaps::Target::CreateAbsentTargetMap(&result_map, &repo_config, 0);
- auto target_map = BuildMaps::Target::CreateTargetMap(&source,
- &targets_file_map,
- &rule_map,
- &directory_entries,
- &absent_target_map,
- &result_map,
- &repo_config);
+ auto target_map =
+ BuildMaps::Target::CreateTargetMap(&source,
+ &targets_file_map,
+ &rule_map,
+ &directory_entries,
+ &absent_target_map,
+ &result_map,
+ &repo_config,
+ Storage::Instance().TargetCache());
AnalysedTargetPtr result;
bool error{false};