diff options
Diffstat (limited to 'tests/trace.test')
-rw-r--r-- | tests/trace.test | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/tests/trace.test b/tests/trace.test index d236421..120c335 100644 --- a/tests/trace.test +++ b/tests/trace.test @@ -11,7 +11,7 @@ # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. # -# RCS: @(#) $Id: trace.test,v 1.34 2004/03/01 17:33:45 dgp Exp $ +# RCS: @(#) $Id: trace.test,v 1.35 2004/11/03 17:16:05 dgp Exp $ if {[lsearch [namespace children] ::tcltest] == -1} { package require tcltest @@ -2197,6 +2197,21 @@ test trace-32.1 { set result } [list [list delete foo]] +test trace-33.1 {527164: Keep -errorinfo of traces} { + unset -nocomplain x y + trace add variable x write {error foo;#} + trace add variable y write {set x 2;#} + list [catch {set y 1} msg opts] $msg [dict get $opts -errorinfo] +} {1 {can't set "y": can't set "x": foo} {foo + while executing +"error foo" + (write trace on "x") + invoked from within +"set x 2" + (write trace on "y") + invoked from within +"set y 1"}} + # Delete procedures when done, so we don't clash with other tests # (e.g. foobar will clash with 'unknown' tests). catch {rename foobar {}} |