diff options
author | Nico Weber <nicolasweber@gmx.de> | 2014-06-27 20:19:46 (GMT) |
---|---|---|
committer | Nico Weber <nicolasweber@gmx.de> | 2014-06-27 20:19:46 (GMT) |
commit | 69bfacebae8315de585837f625739e7621fa38d4 (patch) | |
tree | 8a61e69a62ebc56f7b96463c910975d58ba09e7c /src/depfile_parser_test.cc | |
parent | 63d5b1013cafb2db95687cf446eb5bb68cf6a27a (diff) | |
parent | 7c231a3d0d800bfc2602da097b34d1edca2f600f (diff) | |
download | Ninja-1.5.0.zip Ninja-1.5.0.tar.gz Ninja-1.5.0.tar.bz2 |
v1.5.0v1.5.0
Diffstat (limited to 'src/depfile_parser_test.cc')
-rw-r--r-- | src/depfile_parser_test.cc | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/depfile_parser_test.cc b/src/depfile_parser_test.cc index 0f6771a..a5f3321 100644 --- a/src/depfile_parser_test.cc +++ b/src/depfile_parser_test.cc @@ -58,6 +58,17 @@ TEST_F(DepfileParserTest, Continuation) { EXPECT_EQ(2u, parser_.ins_.size()); } +TEST_F(DepfileParserTest, CarriageReturnContinuation) { + string err; + EXPECT_TRUE(Parse( +"foo.o: \\\r\n" +" bar.h baz.h\r\n", + &err)); + ASSERT_EQ("", err); + EXPECT_EQ("foo.o", parser_.out_.AsString()); + EXPECT_EQ(2u, parser_.ins_.size()); +} + TEST_F(DepfileParserTest, BackSlashes) { string err; EXPECT_TRUE(Parse( @@ -109,16 +120,19 @@ TEST_F(DepfileParserTest, SpecialChars) { string err; EXPECT_TRUE(Parse( "C:/Program\\ Files\\ (x86)/Microsoft\\ crtdefs.h: \n" -" en@quot.header~ t+t-x!=1", +" en@quot.header~ t+t-x!=1 \n" +" openldap/slapd.d/cn=config/cn=schema/cn={0}core.ldif", &err)); ASSERT_EQ("", err); EXPECT_EQ("C:/Program Files (x86)/Microsoft crtdefs.h", parser_.out_.AsString()); - ASSERT_EQ(2u, parser_.ins_.size()); + ASSERT_EQ(3u, parser_.ins_.size()); EXPECT_EQ("en@quot.header~", parser_.ins_[0].AsString()); EXPECT_EQ("t+t-x!=1", parser_.ins_[1].AsString()); + EXPECT_EQ("openldap/slapd.d/cn=config/cn=schema/cn={0}core.ldif", + parser_.ins_[2].AsString()); } TEST_F(DepfileParserTest, UnifyMultipleOutputs) { @@ -136,4 +150,5 @@ TEST_F(DepfileParserTest, RejectMultipleDifferentOutputs) { // check that multiple different outputs are rejected by the parser string err; EXPECT_FALSE(Parse("foo bar: x y z", &err)); + ASSERT_EQ("depfile has multiple output paths", err); } |