summaryrefslogtreecommitdiffstats
path: root/src/ninja_test.cc
diff options
context:
space:
mode:
authorEvan Martin <martine@danga.com>2011-01-08 19:17:50 (GMT)
committerEvan Martin <martine@danga.com>2011-01-08 19:17:50 (GMT)
commitecc26d8cd608de282c675c25a0a6aed1318dc360 (patch)
tree7ee43025ceb0378594d3d87e3a19f9dbd246ec60 /src/ninja_test.cc
parent0a186ab0cbcd2015d2cf9afd8460c7b60e4bcbdd (diff)
downloadNinja-ecc26d8cd608de282c675c25a0a6aed1318dc360.zip
Ninja-ecc26d8cd608de282c675c25a0a6aed1318dc360.tar.gz
Ninja-ecc26d8cd608de282c675c25a0a6aed1318dc360.tar.bz2
remove bottom-up dirtying
Diffstat (limited to 'src/ninja_test.cc')
-rw-r--r--src/ninja_test.cc14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/ninja_test.cc b/src/ninja_test.cc
index 0c992e9..b0c19dd 100644
--- a/src/ninja_test.cc
+++ b/src/ninja_test.cc
@@ -23,6 +23,15 @@ Node* StateTestWithBuiltinRules::GetNode(const string& path) {
return state_.GetNode(path);
}
+void StateTestWithBuiltinRules::ResetDirty() {
+ for (StatCache::Paths::iterator i = state_.stat_cache_.paths_.begin();
+ i != state_.stat_cache_.paths_.end(); ++i) {
+ Node* node = i->second->node_;
+ // Mark node dirty if we have a way to rebuild it.
+ node->dirty_ = node->in_edge_ != NULL;
+ }
+}
+
TEST(State, Basic) {
State state;
Rule* rule = new Rule("cat");
@@ -40,11 +49,6 @@ TEST(State, Basic) {
EXPECT_FALSE(state.GetNode("in1")->dirty());
EXPECT_FALSE(state.GetNode("in2")->dirty());
EXPECT_FALSE(state.GetNode("out")->dirty());
-
- state.stat_cache()->GetFile("in1")->Touch(1);
- EXPECT_TRUE(state.GetNode("in1")->dirty());
- EXPECT_FALSE(state.GetNode("in2")->dirty());
- EXPECT_TRUE(state.GetNode("out")->dirty());
}
struct TestEnv : public Env {