summaryrefslogtreecommitdiffstats
path: root/src/parsers_test.cc
diff options
context:
space:
mode:
authorEvan Martin <martine@danga.com>2011-04-22 17:49:42 (GMT)
committerEvan Martin <martine@danga.com>2011-04-22 17:49:42 (GMT)
commit20b0b38f10b595dd65ee24855afb484af8dc5185 (patch)
tree5c69564a9f76f7fae52942d2b83edc99b6717460 /src/parsers_test.cc
parent7baaadce1182705754a1605fa25955ea9e8168f0 (diff)
downloadNinja-20b0b38f10b595dd65ee24855afb484af8dc5185.zip
Ninja-20b0b38f10b595dd65ee24855afb484af8dc5185.tar.gz
Ninja-20b0b38f10b595dd65ee24855afb484af8dc5185.tar.bz2
use util's CanonicalizePath in parsers as well
Diffstat (limited to 'src/parsers_test.cc')
-rw-r--r--src/parsers_test.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/parsers_test.cc b/src/parsers_test.cc
index 8a1efc5..73c1984 100644
--- a/src/parsers_test.cc
+++ b/src/parsers_test.cc
@@ -162,6 +162,18 @@ TEST_F(ParserTest, PathVariables) {
EXPECT_TRUE(state.LookupNode("out/exe"));
}
+TEST_F(ParserTest, CanonicalizePaths) {
+ ASSERT_NO_FATAL_FAILURE(AssertParse(
+"rule cat\n"
+" command = cat $in > $out\n"
+"build ./out.o: cat ./bar/baz/../foo.cc\n"));
+
+ EXPECT_FALSE(state.LookupNode("./out.o"));
+ EXPECT_TRUE(state.LookupNode("out.o"));
+ EXPECT_FALSE(state.LookupNode("./bar/baz/../foo.cc"));
+ EXPECT_TRUE(state.LookupNode("bar/foo.cc"));
+}
+
TEST_F(ParserTest, Errors) {
{
ManifestParser parser(NULL, NULL);