summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2017-10-18 18:23:38 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2017-10-18 18:23:38 (GMT)
commit69030a86c83b4982c53feaaa0e46e5d235abb665 (patch)
treebc38b2023f3247da93e47331897d30c576a96774
parent5b74714749f656963cac7ffffca487334633c6d1 (diff)
downloadtcl-69030a86c83b4982c53feaaa0e46e5d235abb665.zip
tcl-69030a86c83b4982c53feaaa0e46e5d235abb665.tar.gz
tcl-69030a86c83b4982c53feaaa0e46e5d235abb665.tar.bz2
[1a56550e96] Mixins aren't being searched correctly by [info class methods -all]
-rw-r--r--tests/oo.test24
1 files changed, 23 insertions, 1 deletions
diff --git a/tests/oo.test b/tests/oo.test
index 5eaa8bf..3a6d2d1 100644
--- a/tests/oo.test
+++ b/tests/oo.test
@@ -3799,7 +3799,29 @@ test oo-35.4 {Bug 593baa032c: mixins list teardown} {
oo::class create D {mixin B}
namespace eval [info object namespace D] [list [namespace which B] destroy]
} {}
-
+test oo-35.5 {Bug } -setup {
+ oo::class create base {
+ unexport destroy
+ }
+} -body {
+ oo::class create C {
+ superclass base
+ method c {} {}
+ }
+ oo::class create D {
+ superclass base
+ mixin C
+ method d {} {}
+ }
+ oo::class create E {
+ superclass D
+ method e {} {}
+ }
+ E create e1
+ list [lsort [info class methods E -all]] [lsort [info object methods e1 -all]]
+} -cleanup {
+ base destroy
+} -result {{c d e} {c d e}}
cleanupTests
return