summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorericm <ericm>2000-01-27 19:48:29 (GMT)
committerericm <ericm>2000-01-27 19:48:29 (GMT)
commitd8c3ee2177ba3302b1caf7fe451592c210d68212 (patch)
tree24c3203693a2642f3a3c42276897974f14712b60 /tests
parentb51a945c65f5f8555db941619e83775ad306b65b (diff)
downloadtcl-d8c3ee2177ba3302b1caf7fe451592c210d68212.zip
tcl-d8c3ee2177ba3302b1caf7fe451592c210d68212.tar.gz
tcl-d8c3ee2177ba3302b1caf7fe451592c210d68212.tar.bz2
* tests/pkg/samename.tcl: test file for bug #1983
* tests/pkgMkIndex.test: * library/package.tcl: Fixed bug #1983, dealing with pkg_mkIndex incorrectly handling situations with two procs by the same name but in different namespaces (ie, foo::baz and bar::baz).
Diffstat (limited to 'tests')
-rw-r--r--tests/pkg/samename.tcl25
-rw-r--r--tests/pkgMkIndex.test10
2 files changed, 34 insertions, 1 deletions
diff --git a/tests/pkg/samename.tcl b/tests/pkg/samename.tcl
new file mode 100644
index 0000000..8aa5080
--- /dev/null
+++ b/tests/pkg/samename.tcl
@@ -0,0 +1,25 @@
+package provide football 1.0
+
+namespace eval ::pro:: {
+ #
+ # export only public functions.
+ #
+ namespace export {[a-z]*}
+}
+namespace eval ::college:: {
+ #
+ # export only public functions.
+ #
+ namespace export {[a-z]*}
+}
+
+proc ::pro::team {} {
+ puts "go packers!"
+ return true
+}
+
+proc ::college::team {} {
+ puts "go badgers!"
+ return true
+}
+
diff --git a/tests/pkgMkIndex.test b/tests/pkgMkIndex.test
index 17f3223..664505c 100644
--- a/tests/pkgMkIndex.test
+++ b/tests/pkgMkIndex.test
@@ -8,7 +8,7 @@
# Copyright (c) 1998-1999 by Scriptics Corporation.
# All rights reserved.
#
-# RCS: @(#) $Id: pkgMkIndex.test,v 1.13 2000/01/27 19:20:05 ericm Exp $
+# RCS: @(#) $Id: pkgMkIndex.test,v 1.14 2000/01/27 19:48:30 ericm Exp $
if {[lsearch [namespace children] ::tcltest] == -1} {
package require tcltest
@@ -348,6 +348,14 @@ test pkgMkIndex-11.1 {conflicting namespace imports} {
pkgtest::runIndex -lazy $fullPkgPath import.tcl
} {0 {{fubar:1.0 {tclPkgSetup {import.tcl source ::fubar::foo}}}}}
+# Verify that the auto load list generated is correct even when there
+# is a proc name conflict between two namespaces (ie, ::foo::baz and
+# ::bar::baz)
+
+test pkgMkIndex-12.1 {same name procs in different namespace} {
+ pkgtest::runIndex -lazy $fullPkgPath samename.tcl
+} {0 {{football:1.0 {tclPkgSetup {samename.tcl source {::college::team ::pro::team}}}}}}
+
# cleanup
namespace delete pkgtest