summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--tests/trace.test15
2 files changed, 20 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index d5db118..5a807f2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2005-11-18 Miguel Sofer <msofer@users.sf.net>
+
+ * 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 <kennykb@acm.org>
* 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 {