From 835ed5f7080a98e9ee80ac08d5585ccdbb63fe0e Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 15 Dec 2014 10:43:16 +0200 Subject: Parse directory scopes --- tests/build/parser/driver.cxx | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'tests/build/parser') diff --git a/tests/build/parser/driver.cxx b/tests/build/parser/driver.cxx index 4ba589d..0b83cb0 100644 --- a/tests/build/parser/driver.cxx +++ b/tests/build/parser/driver.cxx @@ -45,6 +45,23 @@ main () assert (!parse ("{foo{:")); assert (!parse ("foo: bar:")); assert (!parse ("exe{foo:")); + + // Directory scope. + // + assert (parse ("test/:\n{\n}")); + assert (parse ("test/:\n{\n}\n")); + assert (parse ("test/:\n{\nfoo:bar\n}")); + assert (parse ("test/:\n{\nfoo:bar\n}")); + assert (parse ("test/:\n{\nmore/:\n{\n}\n}")); + assert (parse ("test/:\n{\nmore/:\n{\nfoo:{bar baz}\n}\n}")); + + assert (!parse ("test/:\n{")); + assert (!parse ("test/:\n{\n")); + assert (!parse ("test/:\n{\n:")); + assert (!parse ("test/:\n{\n} foo: bar\n")); + assert (!parse ("test/ foo:\n{\n}")); + assert (!parse ("test foo/:\n{\n}")); + assert (!parse ("test/ foo/:\n{\n}")); } ostream cnull (nullptr); @@ -56,6 +73,7 @@ parse (const char* s) is.exceptions (istream::failbit | istream::badbit); parser p (cnull); + //parser p (cerr); try { -- cgit v1.1