diff options
Diffstat (limited to 'Test/E02xtrace.ztst')
-rw-r--r-- | Test/E02xtrace.ztst | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/Test/E02xtrace.ztst b/Test/E02xtrace.ztst new file mode 100644 index 000000000..896ef09c7 --- /dev/null +++ b/Test/E02xtrace.ztst @@ -0,0 +1,83 @@ +# Test that xtrace output is correctly generated + +%prep + mkdir xtrace.tmp && cd xtrace.tmp + function xtf { + local regression_test_dummy_variable + print "$*" + } + echo 'print "$*"' > xt.in + +%test + + set -x + print 'Tracing: builtin' + print 'Tracing: builtin 2>file' 2>xtrace.err + cat <<<'Tracing: external' + cat <<<'Tracing: external 2>file' 2>>xtrace.err + ( print 'Tracing: ( builtin )' ) + ( print 'Tracing: ( builtin ) 2>file' ) 2>>xtrace.err + ( cat <<<'Tracing: ( external )' ) + ( cat <<<'Tracing: ( external ) 2>file' ) 2>>xtrace.err + { print 'Tracing: { builtin }' } + { print 'Tracing: { builtin } 2>file' } 2>>xtrace.err + { cat <<<'Tracing: { external }' } + { cat <<<'Tracing: { external } 2>file' } 2>>xtrace.err + repeat 1 do print 'Tracing: do builtin done'; done + repeat 1 do print 'Tracing: do builtin done 2>file'; done 2>>xtrace.err + repeat 1 do cat <<<'Tracing: do external done'; done + repeat 1 do cat <<<'Tracing: do external done 2>file'; done 2>>xtrace.err + xtf 'Tracing: function' + xtf 'Tracing: function 2>file' 2>>xtrace.err + . ./xt.in 'Tracing: source' + . ./xt.in 'Tracing: source 2>file' 2>>xtrace.err + set +x + cat xtrace.err +0:xtrace with and without redirection +>Tracing: builtin +>Tracing: builtin 2>file +>Tracing: external +>Tracing: external 2>file +>Tracing: ( builtin ) +>Tracing: ( builtin ) 2>file +>Tracing: ( external ) +>Tracing: ( external ) 2>file +>Tracing: { builtin } +>Tracing: { builtin } 2>file +>Tracing: { external } +>Tracing: { external } 2>file +>Tracing: do builtin done +>Tracing: do builtin done 2>file +>Tracing: do external done +>Tracing: do external done 2>file +>Tracing: function +>Tracing: function 2>file +>Tracing: source +>Tracing: source 2>file +>+ZTST_execchunk:2> print Tracing: ( builtin ) 2>file +>+ZTST_execchunk:2> cat +>+ZTST_execchunk:2> print Tracing: { builtin } 2>file +>+ZTST_execchunk:2> cat +>+ZTST_execchunk:2> print Tracing: do builtin done 2>file +>+ZTST_execchunk:2> cat +?+ZTST_execchunk:2> print Tracing: builtin +?+ZTST_execchunk:2> print Tracing: builtin 2>file +?+ZTST_execchunk:2> cat +?+ZTST_execchunk:2> cat +?+ZTST_execchunk:2> print Tracing: ( builtin ) +?+ZTST_execchunk:2> cat +?+ZTST_execchunk:2> print Tracing: { builtin } +?+ZTST_execchunk:2> cat +?+ZTST_execchunk:2> print Tracing: do builtin done +?+ZTST_execchunk:2> cat +?+ZTST_execchunk:2> xtf Tracing: function +?+xtf:0> local regression_test_dummy_variable +?+xtf:0> print Tracing: function +?+ZTST_execchunk:2> xtf Tracing: function 2>file +?+xtf:0> local regression_test_dummy_variable +?+xtf:0> print Tracing: function 2>file +?+ZTST_execchunk:2> . ./xt.in Tracing: source +?+./xt.in:1> print Tracing: source +?+ZTST_execchunk:2> . ./xt.in Tracing: source 2>file +?+./xt.in:1> print Tracing: source 2>file +?+ZTST_execchunk:2> set +x |