summaryrefslogtreecommitdiffstats
path: root/src/ninja_test.cc
diff options
context:
space:
mode:
authorNicolas Despres <nicolas.despres@gmail.com>2011-05-02 14:46:31 (GMT)
committerNicolas Despres <nicolas.despres@gmail.com>2011-05-02 15:21:21 (GMT)
commit9412cb05008437b2ce534871ec86772b107ce23c (patch)
tree6f4c1eac7f0d6e4608d398b5f415b60c93a780e1 /src/ninja_test.cc
parent5113d8c29f2e165dabb05c5624055020704ba5fc (diff)
downloadNinja-9412cb05008437b2ce534871ec86772b107ce23c.zip
Ninja-9412cb05008437b2ce534871ec86772b107ce23c.tar.gz
Ninja-9412cb05008437b2ce534871ec86772b107ce23c.tar.bz2
Return non-zero status when errors occur.
Clean all was not returning non-zero when an error occur (like when failing to remove a directory). This patch fix the problem and add a test for it.
Diffstat (limited to 'src/ninja_test.cc')
-rw-r--r--src/ninja_test.cc9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/ninja_test.cc b/src/ninja_test.cc
index e8e7f08..8d53343 100644
--- a/src/ninja_test.cc
+++ b/src/ninja_test.cc
@@ -114,9 +114,9 @@ struct StatTest : public StateTestWithBuiltinRules,
assert(false);
return "";
}
- virtual bool RemoveFile(const string& path) {
+ virtual int RemoveFile(const string& path) {
assert(false);
- return false;
+ return 0;
}
map<string, time_t> mtimes_;
@@ -262,6 +262,7 @@ TEST_F(DiskInterfaceTest, RemoveFile) {
string cmd = "touch ";
cmd += kFileName;
ASSERT_EQ(0, system(cmd.c_str()));
- EXPECT_TRUE(disk_.RemoveFile(kFileName));
- EXPECT_FALSE(disk_.RemoveFile(kFileName));
+ EXPECT_EQ(0, disk_.RemoveFile(kFileName));
+ EXPECT_EQ(1, disk_.RemoveFile(kFileName));
+ EXPECT_EQ(-1, disk_.RemoveFile("does not exist"));
}