summaryrefslogtreecommitdiffstats
path: root/src/ninja_test.cc
diff options
context:
space:
mode:
authorNicolas Despres <nicolas.despres@gmail.com>2011-05-02 14:09:10 (GMT)
committerNicolas Despres <nicolas.despres@gmail.com>2011-05-02 14:57:32 (GMT)
commit5113d8c29f2e165dabb05c5624055020704ba5fc (patch)
treeef3be3cbe13855200f03b182afeb2acb69d58ac6 /src/ninja_test.cc
parent23a7aa78bf2a8fffc27eec74e928c6681d11f094 (diff)
downloadNinja-5113d8c29f2e165dabb05c5624055020704ba5fc.zip
Ninja-5113d8c29f2e165dabb05c5624055020704ba5fc.tar.gz
Ninja-5113d8c29f2e165dabb05c5624055020704ba5fc.tar.bz2
Add a test for the clean tool.
It also fix a bug about the count of removed file reported.
Diffstat (limited to 'src/ninja_test.cc')
-rw-r--r--src/ninja_test.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/ninja_test.cc b/src/ninja_test.cc
index a4ec3a5..e8e7f08 100644
--- a/src/ninja_test.cc
+++ b/src/ninja_test.cc
@@ -114,6 +114,10 @@ struct StatTest : public StateTestWithBuiltinRules,
assert(false);
return "";
}
+ virtual bool RemoveFile(const string& path) {
+ assert(false);
+ return false;
+ }
map<string, time_t> mtimes_;
vector<string> stats_;
@@ -252,3 +256,12 @@ TEST_F(DiskInterfaceTest, ReadFile) {
TEST_F(DiskInterfaceTest, MakeDirs) {
EXPECT_TRUE(disk_.MakeDirs("path/with/double//slash/"));
}
+
+TEST_F(DiskInterfaceTest, RemoveFile) {
+ const char* kFileName = "file-to-remove";
+ string cmd = "touch ";
+ cmd += kFileName;
+ ASSERT_EQ(0, system(cmd.c_str()));
+ EXPECT_TRUE(disk_.RemoveFile(kFileName));
+ EXPECT_FALSE(disk_.RemoveFile(kFileName));
+}