summaryrefslogtreecommitdiff
path: root/dotfiles/system/.zsh/modules/Test/C05debug.ztst
diff options
context:
space:
mode:
Diffstat (limited to 'dotfiles/system/.zsh/modules/Test/C05debug.ztst')
-rw-r--r--dotfiles/system/.zsh/modules/Test/C05debug.ztst159
1 files changed, 0 insertions, 159 deletions
diff --git a/dotfiles/system/.zsh/modules/Test/C05debug.ztst b/dotfiles/system/.zsh/modules/Test/C05debug.ztst
deleted file mode 100644
index 9a8df1d..0000000
--- a/dotfiles/system/.zsh/modules/Test/C05debug.ztst
+++ /dev/null
@@ -1,159 +0,0 @@
-%prep
-
- setopt localtraps
-
-%test
-
- unsetopt DEBUG_BEFORE_CMD
- debug-trap-bug1() {
- setopt localtraps
- print "print bug file here" >bug-file
- print "print this is line one
- print this is line two
- print this is line three
- print and this is line fifty-nine." >bug-file2
- function debug_trap_handler {
- print $functrace[1]
- do_bug
- }
- function do_bug {
- . ./bug-file
- }
- trap 'echo EXIT hit' EXIT
- trap 'debug_trap_handler' DEBUG
- . ./bug-file2
- }
- debug-trap-bug1
-0: Relationship between traps and sources
->debug-trap-bug1:15
->bug file here
->this is line one
->./bug-file2:1
->bug file here
->this is line two
->./bug-file2:2
->bug file here
->this is line three
->./bug-file2:3
->bug file here
->and this is line fifty-nine.
->./bug-file2:4
->bug file here
->debug-trap-bug1:16
->bug file here
->EXIT hit
-
- cat >zsh-trapreturn-bug2 <<-'HERE'
- cmd='./fdasfsdafd'
- [[ -x $cmd ]] && rm $cmd
- set -o DEBUG_BEFORE_CMD
- trap '[[ $? -ne 0 ]] && exit 0' DEBUG
- $cmd # invalid command
- # Failure
- exit 10
- HERE
- $ZTST_testdir/../Src/zsh -f ./zsh-trapreturn-bug2 2>erroutput.dif
- mystat=$?
- (
- setopt extendedglob
- print ${"$(< erroutput.dif)"%%:[^:]#: ./fdasfsdafd}
- )
- (( mystat == 0 ))
-0: trapreturn handling bug is properly fixed
->./zsh-trapreturn-bug2:5
-
- fn() {
- setopt localtraps localoptions debugbeforecmd
- trap '(( LINENO == 4 )) && setopt errexit' DEBUG
- print $LINENO three
- print $LINENO four
- print $LINENO five
- [[ -o errexit ]] && print "Hey, ERREXIT is set!"
- }
- fn
-1:Skip line from DEBUG trap
->3 three
->5 five
-
- # Assignments are a special case, since they use a simpler
- # wordcode type, so we need to test skipping them separately.
- fn() {
- setopt localtraps localoptions debugbeforecmd
- trap '(( LINENO == 4 )) && setopt errexit' DEBUG
- x=three
- x=four
- print $LINENO $x
- [[ -o errexit ]] && print "Hey, ERREXIT is set!"
- }
- fn
-1:Skip assignment from DEBUG trap
->5 three
-
- fn() {
- setopt localtraps localoptions debugbeforecmd
- trap 'print $LINENO' DEBUG
- [[ a = a ]] && print a is ok
- }
- fn
-0:line numbers of complex sublists
->3
->a is ok
-
- fn() {
- setopt localtraps localoptions debugbeforecmd
- trap 'print $LINENO' DEBUG
- print before
- x=' first
- second
- third'
- print $x
- }
- fn
-0:line numbers of multiline assignments
->3
->before
->4
->7
-> first
-> second
-> third
-
- fn() {
- emulate -L zsh; setopt debugbeforecmd
- trap 'print "$LINENO: '\''$ZSH_DEBUG_CMD'\''"' DEBUG
- print foo &&
- print bar ||
- print rod
- x=y
- print $x
- fn2() { echo wow }
- fn2
- }
- fn
-0:ZSH_DEBUG_CMD in debug traps
->3: 'print foo && print bar || print rod'
->foo
->bar
->6: 'x=y '
->7: 'print $x'
->y
->8: 'fn2 () {
-> echo wow
->}'
->9: 'fn2'
->0: 'echo wow'
->wow
-
- foo() {
- emulate -L zsh; setopt debugbeforecmd
- trap '[[ $ZSH_DEBUG_CMD == *bar* ]] && return 2' DEBUG
- echo foo
- echo bar
- }
- foo
-2:Status of forced return from eval-style DEBUG trap
->foo
-
-%clean
-
- rm -f bug-file bug-file2 erroutput.dif zsh-trapreturn-bug2