From b3e6cb1b899dcc6b3488f10d8eee437a6f87ad15 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Thu, 27 Oct 2016 18:08:12 +0300 Subject: Add support of merge redirect to testscript runner --- tests/test/script/runner/buildfile | 2 +- tests/test/script/runner/redirect.test | 134 +++++++++++++++++++++++++++++++++ tests/test/script/runner/status.test | 9 +++ tests/test/script/runner/testscript | 117 ---------------------------- 4 files changed, 144 insertions(+), 118 deletions(-) create mode 100644 tests/test/script/runner/redirect.test create mode 100644 tests/test/script/runner/status.test delete mode 100644 tests/test/script/runner/testscript (limited to 'tests') diff --git a/tests/test/script/runner/buildfile b/tests/test/script/runner/buildfile index c91f940..ddab8a5 100644 --- a/tests/test/script/runner/buildfile +++ b/tests/test/script/runner/buildfile @@ -2,6 +2,6 @@ # copyright : Copyright (c) 2014-2016 Code Synthesis Ltd # license : MIT; see accompanying LICENSE file -exe{driver}: cxx{driver} test{testscript} +exe{driver}: cxx{driver} test{redirect status} include ../../../../../build2/ diff --git a/tests/test/script/runner/redirect.test b/tests/test/script/runner/redirect.test new file mode 100644 index 0000000..a49cd3c --- /dev/null +++ b/tests/test/script/runner/redirect.test @@ -0,0 +1,134 @@ +# file : tests/test/script/runner/redirect.test +# copyright : Copyright (c) 2014-2016 Code Synthesis Ltd +# license : MIT; see accompanying LICENSE file + +$* -o foo >- # out-null +$* -e foo 2>- # err-null +$* -i 0 foo # out-str +$* -e foo 2>foo # err-str +$* -i 1 foo # inout-str +$* -i 2 foo # inerr-str +$* -i 1 -e bar foo 2>bar # inout-err-str + +$* -i 0 <>EOO # out-doc +foo +bar +EOO + +$* -e foo -e bar 2>>EOO # err-doc +foo +bar +EOO + +$* -i 1 <>EOO # inout-doc +foo +bar +EOI +foo +bar +EOO + +$* -i 2 <>EOE # inerr-doc +foo +bar +EOI +foo +bar +EOE + +$* -i 1 -e bar -e baz -s 2 <>EOO 2>>EOE == 2 # inout-err-doc-status +foo +bar +EOI +foo +bar +EOO +bar +baz +EOE + +$* -i 1 -e "" <>EOO 2>"" # empty-str-doc +EOI +EOO + +$* -i 1 <>EOO # nl-containing-doc + +EOI + +EOO + +# No-newline tests. +# +# @@ TMP Need does not compare test. +# +$* -i 1 <:"foo" >:"foo" # no-newline-str +#\ +$* -i 1 <:"foo" >!"foo" # no-newline-str-fail1 +$* -i 1 <"foo" >:!"foo" # no-newline-str-fail2 +#\ + +$* -i 1 <<:EOI >>:EOO # no-newline-doc +foo +EOI +foo +EOO + +#\ +$* -i 1 <<:EOI >>!EOO # no-newline-doc-fail1 +foo +EOI +foo +EOO + +$* -i 1 <>:!EOO # no-newline-doc-fail2 +foo +EOI +foo +EOO +#\ + +$* -i 1 <<:EOI >>:EOO 2>:"" # no-newline-empty-str-doc +EOI +EOO + +$* -i 1 <<:EOI >>:EOO # no-newline-nl-cont-doc + +EOI + +EOO + +$* -o foo >>>out; # file +$* -e bar 2>>>&out; +$* -i 1 <<>EOO +foo +bar +EOO + +$* -o foo -e bar 2>>EOE 1>&2 # merge-str +foo +bar +EOE + +$* -i 1 <>EOO 2>&1 # merge-doc +foo +bar +EOI +foo +bar +baz +EOO + +$* -o foo -e bar 2>&1 >>>out; # merge-file +$* -e baz -o biz 1>&2 2>>>&out; +$* -i 1 <<>EOO +foo +bar +baz +biz +EOO diff --git a/tests/test/script/runner/status.test b/tests/test/script/runner/status.test new file mode 100644 index 0000000..5d4d116 --- /dev/null +++ b/tests/test/script/runner/status.test @@ -0,0 +1,9 @@ +# file : tests/test/script/runner/status.tests +# copyright : Copyright (c) 2014-2016 Code Synthesis Ltd +# license : MIT; see accompanying LICENSE file + +$* # status-def +$* == 0 # status-eq-0 +$* -s 1 != 0 # status-ne-0 +$* -s 1 == 1 # status-eq-1 +$* != 1 # status-ne-1 diff --git a/tests/test/script/runner/testscript b/tests/test/script/runner/testscript deleted file mode 100644 index c95ed07..0000000 --- a/tests/test/script/runner/testscript +++ /dev/null @@ -1,117 +0,0 @@ -# file : tests/test/script/runner/testscript -# copyright : Copyright (c) 2014-2016 Code Synthesis Ltd -# license : MIT; see accompanying LICENSE file - -$* # status-def -$* == 0 # status-eq-0 -$* -s 1 != 0 # status-ne-0 -$* -s 1 == 1 # status-eq-1 -$* != 1 # status-ne-1 - -$* -o foo >- # out-null -$* -e foo 2>- # err-null -$* -i 0 foo # out-str -$* -e foo 2>foo # err-str -$* -i 1 foo # inout-str -$* -i 2 foo # inerr-str -$* -i 1 -e bar foo 2>bar # inout-err-str - -$* -i 0 <>EOO # out-doc -foo -bar -EOO - -$* -e foo -e bar 2>>EOO # err-doc -foo -bar -EOO - -$* -i 1 <>EOO # inout-doc -foo -bar -EOI -foo -bar -EOO - -$* -i 2 <>EOE # inerr-doc -foo -bar -EOI -foo -bar -EOE - -$* -i 1 -e bar -e baz -s 2 <>EOO 2>>EOE == 2 # inout-err-doc-status -foo -bar -EOI -foo -bar -EOO -bar -baz -EOE - -$* -i 1 -e "" <>EOO 2>"" # empty-str-doc -EOI -EOO - -$* -i 1 <>EOO # nl-containing-doc - -EOI - -EOO - -# No-newline tests. -# -# @@ TMP Need does not compare test. -# -$* -i 1 <:"foo" >:"foo" # no-newline-str -#\ -$* -i 1 <:"foo" >!"foo" # no-newline-str-fail1 -$* -i 1 <"foo" >:!"foo" # no-newline-str-fail2 -#\ - -$* -i 1 <<:EOI >>:EOO # no-newline-doc -foo -EOI -foo -EOO - -#\ -$* -i 1 <<:EOI >>!EOO # no-newline-doc-fail1 -foo -EOI -foo -EOO - -$* -i 1 <>:!EOO # no-newline-doc-fail2 -foo -EOI -foo -EOO -#\ - -$* -i 1 <<:EOI >>:EOO 2>:"" # no-newline-empty-str-doc -EOI -EOO - -$* -i 1 <<:EOI >>:EOO # no-newline-nl-cont-doc - -EOI - -EOO - -$* -o foo >>>out; # file-redirect -$* -e bar 2>>>&out; -$* -i 1 <<>EOO -foo -bar -EOO -- cgit v1.1