| Index: tools/gn/target_unittest.cc
|
| diff --git a/tools/gn/target_unittest.cc b/tools/gn/target_unittest.cc
|
| index 4d9b1da8b8fa56c14cf1cac8d12ed9fa9621768d..c59f44c0717de4f6f19fb14df8f18eea98ea5220 100644
|
| --- a/tools/gn/target_unittest.cc
|
| +++ b/tools/gn/target_unittest.cc
|
| @@ -587,6 +587,31 @@ TEST(Target, WriteFileGeneratedInputs) {
|
| EXPECT_TRUE(scheduler.GetUnknownGeneratedInputs().empty());
|
| }
|
|
|
| +// Tests that intermediate object files generated by binary targets are also
|
| +// considered generated for the purposes of input checking. Above, we tested
|
| +// the failure cases for generated inputs, so here only test .o files that are
|
| +// present.
|
| +TEST(Target, ObjectGeneratedInputs) {
|
| + Scheduler scheduler;
|
| + TestWithScope setup;
|
| + Err err;
|
| +
|
| + // This target compiles the source.
|
| + SourceFile source_file("//source.cc");
|
| + TestTarget source_generator(setup, "//:source_target", Target::SOURCE_SET);
|
| + source_generator.sources().push_back(source_file);
|
| + EXPECT_TRUE(source_generator.OnResolved(&err));
|
| +
|
| + // This is the object file that the test toolchain generates for the source.
|
| + SourceFile object_file("//out/Debug/obj/source_target.source.o");
|
| +
|
| + TestTarget final_target(setup, "//:final", Target::ACTION);
|
| + final_target.inputs().push_back(object_file);
|
| + EXPECT_TRUE(final_target.OnResolved(&err));
|
| +
|
| + AssertSchedulerHasOneUnknownFileMatching(&final_target, object_file);
|
| +}
|
| +
|
| TEST(Target, ResolvePrecompiledHeaders) {
|
| TestWithScope setup;
|
| Err err;
|
|
|