aboutsummaryrefslogtreecommitdiff
path: root/tests/test/script/runner/pipe.testscript
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test/script/runner/pipe.testscript')
-rw-r--r--tests/test/script/runner/pipe.testscript35
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/test/script/runner/pipe.testscript b/tests/test/script/runner/pipe.testscript
new file mode 100644
index 0000000..7ef5893
--- /dev/null
+++ b/tests/test/script/runner/pipe.testscript
@@ -0,0 +1,35 @@
+# file : tests/test/script/runner/pipe.testscript
+# copyright : Copyright (c) 2014-2018 Code Synthesis Ltd
+# license : MIT; see accompanying LICENSE file
+
+.include ../common.testscript
+
+$c <'cat <foo | $* -i 1 >foo' && $b : builtin-to-process
+$c <'$* -o foo | cat >foo' && $b : process-to-builtin
+
+
+: failure
+:
+: Note that while both commands for the pipe are faulty the diagnostics for
+: only the last one is printed.
+:
+{
+ : exit-code
+ :
+ $c <'$* -o foo -s 1 | $* -i 1 >foo -s 2' && $b 2>>/~%EOE% != 0
+ %testscript:1:1: error: .+ exit code 2 != 0%
+ info: stdout: test/1/stdout-2
+ EOE
+
+ : stderr
+ :
+ $c <'$* -o foo -e foo 2>bar | $* -i 2 2>baz' && $b 2>>/~%EOE% != 0
+ %testscript:1:1: error: .+ stderr doesn't match expected%
+ info: stderr: test/1/stderr-2
+ info: expected stderr: test/1/stderr-2.orig
+ info: stderr diff: test/1/stderr-2.diff
+ %.{3}
+ -baz
+ +foo
+ EOE
+}