From b4d32ce24806c04ec6f66a41be1e1e8419f3e25f Mon Sep 17 00:00:00 2001 From: Miguel Sofer Date: Fri, 18 Nov 2005 23:42:12 +0000 Subject: * tests/trace.test (trace-34.5): [Bug 1047286], added a second test illustrating the role of "ns in callStack" in the ns's visibility during deletion traces. --- ChangeLog | 6 ++++++ tests/trace.test | 15 ++++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index d5db118..5a807f2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2005-11-18 Miguel Sofer + + * tests/trace.test (trace-34.5): [Bug 1047286], added a second + test illustrating the role of "ns in callStack" in the ns's + visibility during deletion traces. + 2005-11-18 Kevin B. Kenny * doc/clock.n: Restored several missing lines near the %w diff --git a/tests/trace.test b/tests/trace.test index 7009503..7766431 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.46 2005/11/14 00:41:06 msofer Exp $ +# RCS: @(#) $Id: trace.test,v 1.47 2005/11/18 23:42:12 msofer Exp $ if {[lsearch [namespace children] ::tcltest] == -1} { package require tcltest @@ -2334,6 +2334,8 @@ test trace-34.3 {Bug 1224585} { foo } {} +# We test here for the half-documented and currently valid interplay between +# delete traces and namespace deletion. test trace-34.4 {Bug 1047286} { variable x notrace proc callback {old - -} { @@ -2345,6 +2347,17 @@ test trace-34.4 {Bug 1047286} { set x } {::foo::bar exists: ::foo::bar} +test trace-34.5 {Bug 1047286} { + variable x notrace + proc callback {old - -} { + variable x "$old exists: [namespace which -command $old]" + } + namespace eval ::foo {proc bar {} {}} + trace add command ::foo::bar delete [namespace code callback] + namespace eval ::foo namespace delete ::foo + set x +} {::foo::bar exists: } + test trace-35.1 {527164: Keep -errorinfo of traces} -setup { unset -nocomplain x y } -body { -- cgit v0.12