From 79a83d6dd0f312a5e390f5627f68cc96c4427d33 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 24 Oct 2016 18:00:05 +0200 Subject: Add support for setup/teardown commands --- unit-tests/test/script/lexer/assign-line.test | 8 -------- unit-tests/test/script/lexer/buildfile | 2 +- unit-tests/test/script/lexer/driver.cxx | 6 ++++-- unit-tests/test/script/lexer/first-token.test | 8 ++++++++ unit-tests/test/script/lexer/second-token.test | 8 ++++++++ unit-tests/test/script/parser/driver.cxx | 2 +- unit-tests/test/script/parser/here-document.test | 16 ++++++++++++++++ 7 files changed, 38 insertions(+), 12 deletions(-) delete mode 100644 unit-tests/test/script/lexer/assign-line.test create mode 100644 unit-tests/test/script/lexer/first-token.test create mode 100644 unit-tests/test/script/lexer/second-token.test (limited to 'unit-tests') diff --git a/unit-tests/test/script/lexer/assign-line.test b/unit-tests/test/script/lexer/assign-line.test deleted file mode 100644 index ce3e8a1..0000000 --- a/unit-tests/test/script/lexer/assign-line.test +++ /dev/null @@ -1,8 +0,0 @@ -# Note: this mode auto-expires after each token. -# -test.arguments += assign-line - -$* <";" >>EOO # semi-only -; - -EOO diff --git a/unit-tests/test/script/lexer/buildfile b/unit-tests/test/script/lexer/buildfile index 856d35d..fab61b6 100644 --- a/unit-tests/test/script/lexer/buildfile +++ b/unit-tests/test/script/lexer/buildfile @@ -8,6 +8,6 @@ import libs = libbutl%lib{butl} src = token lexer diagnostics utility variable name test/script/{token lexer} exe{driver}: cxx{driver} ../../../../build2/cxx{$src} $libs \ -test{script-line assign-line variable-line variable comment} +test{script-line first-token second-token variable-line variable comment} include ../../../../build2/ diff --git a/unit-tests/test/script/lexer/driver.cxx b/unit-tests/test/script/lexer/driver.cxx index e37e29d..bda21e4 100644 --- a/unit-tests/test/script/lexer/driver.cxx +++ b/unit-tests/test/script/lexer/driver.cxx @@ -30,7 +30,8 @@ namespace build2 string s (argv[1]); if (s == "script-line") m = lexer_mode::script_line; - else if (s == "assign-line") m = lexer_mode::assign_line; + else if (s == "first-token") m = lexer_mode::second_token; + else if (s == "second-token") m = lexer_mode::first_token; else if (s == "variable-line") m = lexer_mode::variable_line; else if (s == "command-line") m = lexer_mode::command_line; else if (s == "here-line") m = lexer_mode::here_line; @@ -44,7 +45,8 @@ namespace build2 // Some modes auto-expire so we need something underneath. // - bool u (m == lexer_mode::assign_line || + bool u (m == lexer_mode::first_token || + m == lexer_mode::second_token || m == lexer_mode::variable_line || m == lexer_mode::variable); diff --git a/unit-tests/test/script/lexer/first-token.test b/unit-tests/test/script/lexer/first-token.test new file mode 100644 index 0000000..a665fed --- /dev/null +++ b/unit-tests/test/script/lexer/first-token.test @@ -0,0 +1,8 @@ +# Note: this mode auto-expires after each token. +# +test.arguments += first-token + +$* <";" >>EOO # semi-only +; + +EOO diff --git a/unit-tests/test/script/lexer/second-token.test b/unit-tests/test/script/lexer/second-token.test new file mode 100644 index 0000000..a665fed --- /dev/null +++ b/unit-tests/test/script/lexer/second-token.test @@ -0,0 +1,8 @@ +# Note: this mode auto-expires after each token. +# +test.arguments += first-token + +$* <";" >>EOO # semi-only +; + +EOO diff --git a/unit-tests/test/script/parser/driver.cxx b/unit-tests/test/script/parser/driver.cxx index 4fd0489..6e3fed5 100644 --- a/unit-tests/test/script/parser/driver.cxx +++ b/unit-tests/test/script/parser/driver.cxx @@ -70,7 +70,7 @@ namespace build2 { tracer trace ("main"); - init (1); // Default verbosity. + init ("false", 1); // No build system driver, default verbosity. reset (strings ()); // No command line variables. bool scope (false); diff --git a/unit-tests/test/script/parser/here-document.test b/unit-tests/test/script/parser/here-document.test index 13b070a..d6b21fd 100644 --- a/unit-tests/test/script/parser/here-document.test +++ b/unit-tests/test/script/parser/here-document.test @@ -1,4 +1,20 @@ +$* <>EOO # blank-lines +cmd <