Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(209)

Unified Diff: tools/gn/header_checker_unittest.cc

Issue 1476263005: Test for generated files being detected during `gn check`. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@gn-check-bug
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | tools/gn/test_with_scope.cc » ('j') | tools/gn/test_with_scope.cc » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/gn/header_checker_unittest.cc
diff --git a/tools/gn/header_checker_unittest.cc b/tools/gn/header_checker_unittest.cc
index 19d5e4054fd4f850d0f6672180166c57b7ca8abb..f719247079b63ce58ca4283a4ce64437f68e1a6d 100644
--- a/tools/gn/header_checker_unittest.cc
+++ b/tools/gn/header_checker_unittest.cc
@@ -288,3 +288,31 @@ TEST_F(HeaderCheckerTest, CheckIncludeAllowCircular) {
EXPECT_TRUE(checker->CheckInclude(&b_, input_file, a_public, range, &err));
EXPECT_FALSE(err.has_error());
}
+
+TEST_F(HeaderCheckerTest, SkipGeneratedFilesFromOtherTargets) {
+ Err err;
+
+ Target action(setup_.settings(), Label(SourceDir("//a"), "generate_file"));
+ action.set_output_type(Target::ACTION);
+ action.SetToolchain(setup_.toolchain(), &err);
+ action.visibility().SetPublic();
+ action.action_values().outputs() =
+ SubstitutionList::MakeForTest("//out/Debug/gen/a/a.h");
+
+ Target target(setup_.settings(), Label(SourceDir("//a"), "use_file"));
+ target.set_output_type(Target::SOURCE_SET);
+ target.SetToolchain(setup_.toolchain(), &err);
+ target.visibility().SetPublic();
+ target.sources().push_back(SourceFile("//out/Debug/gen/a/a.h"));
+
+ std::vector<const Target*> all_targets;
+ all_targets.push_back(&action);
+ all_targets.push_back(&target);
+ std::vector<const Target*> to_check;
+ to_check.push_back(&target);
+ bool force_check = false;
+ std::vector<Err> errs;
+ scoped_refptr<HeaderChecker> checker(
+ new HeaderChecker(setup_.build_settings(), all_targets));
+ EXPECT_TRUE(checker->Run(to_check, force_check, &errs));
+}
« no previous file with comments | « no previous file | tools/gn/test_with_scope.cc » ('j') | tools/gn/test_with_scope.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698