summaryrefslogtreecommitdiffstats
path: root/src/ninja_test.cc
diff options
context:
space:
mode:
authorAlexei Svitkine <asvitkine@google.com>2011-04-26 18:49:49 (GMT)
committerEvan Martin <martine@danga.com>2011-04-26 18:49:49 (GMT)
commit2f6ac73dad3806e771761af3a58d43d434337a4b (patch)
treede9266a1e7a635f66299a2847c6c66d894ad6637 /src/ninja_test.cc
parent5c192cda0788faeed93b3ba03a6830ed43762b24 (diff)
downloadNinja-2f6ac73dad3806e771761af3a58d43d434337a4b.zip
Ninja-2f6ac73dad3806e771761af3a58d43d434337a4b.tar.gz
Ninja-2f6ac73dad3806e771761af3a58d43d434337a4b.tar.bz2
include location of error in parse error messages in EvalEnv strings
E.g. when parsing "foo = ${bar", point at the correct location of the missing curly brace.
Diffstat (limited to 'src/ninja_test.cc')
-rw-r--r--src/ninja_test.cc12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/ninja_test.cc b/src/ninja_test.cc
index bd4546b..a4ec3a5 100644
--- a/src/ninja_test.cc
+++ b/src/ninja_test.cc
@@ -78,8 +78,18 @@ TEST(EvalString, OneVariableUpperCase) {
TEST(EvalString, Error) {
EvalString str;
string err;
- EXPECT_FALSE(str.Parse("bad $", &err));
+ size_t err_index;
+ EXPECT_FALSE(str.Parse("bad $", &err, &err_index));
EXPECT_EQ("expected variable after $", err);
+ EXPECT_EQ(5, err_index);
+}
+TEST(EvalString, CurlyError) {
+ EvalString str;
+ string err;
+ size_t err_index;
+ EXPECT_FALSE(str.Parse("bad ${bar", &err, &err_index));
+ EXPECT_EQ("expected closing curly after ${", err);
+ EXPECT_EQ(9, err_index);
}
TEST(EvalString, Curlies) {
EvalString str;