summaryrefslogtreecommitdiffstats
path: root/src/clean_test.cc
diff options
context:
space:
mode:
authorQingning Huo <qingninghuo@gmail.com>2012-03-14 21:11:31 (GMT)
committerQingning Huo <qingninghuo@gmail.com>2012-03-14 21:11:31 (GMT)
commitef505e4573b14c802b1e5c2891694fa3c4e677e1 (patch)
tree530991bf5c6422082e35b9ff3a16b011febe0e02 /src/clean_test.cc
parentfdec96f54e92d2990ebf1ba5434b317d3d8ad49d (diff)
downloadNinja-ef505e4573b14c802b1e5c2891694fa3c4e677e1.zip
Ninja-ef505e4573b14c802b1e5c2891694fa3c4e677e1.tar.gz
Ninja-ef505e4573b14c802b1e5c2891694fa3c4e677e1.tar.bz2
Remove depfiles when running when running "ninja -t clean <target>"
or "ninja -t clean -r <rule>"
Diffstat (limited to 'src/clean_test.cc')
-rw-r--r--src/clean_test.cc30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/clean_test.cc b/src/clean_test.cc
index fbbe6a1..2e3a6b0 100644
--- a/src/clean_test.cc
+++ b/src/clean_test.cc
@@ -249,6 +249,36 @@ TEST_F(CleanTest, CleanDepFile) {
EXPECT_EQ(2u, fs_.files_removed_.size());
}
+TEST_F(CleanTest, CleanDepFileOnCleanTarget) {
+ ASSERT_NO_FATAL_FAILURE(AssertParse(&state_,
+"rule cc\n"
+" command = cc $in > $out\n"
+" depfile = $out.d\n"
+"build out1: cc in1\n"));
+ fs_.Create("out1", 1, "");
+ fs_.Create("out1.d", 1, "");
+
+ Cleaner cleaner(&state_, config_, &fs_);
+ EXPECT_EQ(0, cleaner.CleanTarget("out1"));
+ EXPECT_EQ(2, cleaner.cleaned_files_count());
+ EXPECT_EQ(2u, fs_.files_removed_.size());
+}
+
+TEST_F(CleanTest, CleanDepFileOnCleanRule) {
+ ASSERT_NO_FATAL_FAILURE(AssertParse(&state_,
+"rule cc\n"
+" command = cc $in > $out\n"
+" depfile = $out.d\n"
+"build out1: cc in1\n"));
+ fs_.Create("out1", 1, "");
+ fs_.Create("out1.d", 1, "");
+
+ Cleaner cleaner(&state_, config_, &fs_);
+ EXPECT_EQ(0, cleaner.CleanRule("cc"));
+ EXPECT_EQ(2, cleaner.cleaned_files_count());
+ EXPECT_EQ(2u, fs_.files_removed_.size());
+}
+
TEST_F(CleanTest, CleanRspFile) {
ASSERT_NO_FATAL_FAILURE(AssertParse(&state_,
"rule cc\n"