summaryrefslogtreecommitdiff
path: root/Test/A05execution.ztst
diff options
context:
space:
mode:
Diffstat (limited to 'Test/A05execution.ztst')
-rw-r--r--Test/A05execution.ztst24
1 files changed, 24 insertions, 0 deletions
diff --git a/Test/A05execution.ztst b/Test/A05execution.ztst
index b4fb8739a..ba7e02cd5 100644
--- a/Test/A05execution.ztst
+++ b/Test/A05execution.ztst
@@ -178,3 +178,27 @@
kill $!
0:Status reset by starting a backgrounded command
>0
+
+ setopt MONITOR
+ [[ -o MONITOR ]] || print -u $ZTST_fd 'Unable to change MONITOR option'
+ repeat 2048; do (return 2 |
+ return 1 |
+ while true; do
+ false
+ break
+ done;
+ print "${pipestatus[@]}")
+ ZTST_hashmark
+ done | sort | uniq -c | sed 's/^ *//'
+0:Check whether `$pipestatus[]' behaves.
+>2048 2 1 0
+F:This test checks for a bug in `$pipestatus[]' handling. If it breaks then
+F:the bug is still there or it reappeared. See workers-29973 for details.
+
+ setopt MONITOR
+ externFunc() { awk >/dev/null 2>&1; true; }
+ false | true | false | true | externFunc
+ echo $pipestatus
+0:Check $pipestatus with a known difficult case
+>1 0 1 0 0
+F:This similar test was triggering a reproducible failure with pipestatus.