diff options
author | hobbs <hobbs> | 2000-05-11 00:17:29 (GMT) |
---|---|---|
committer | hobbs <hobbs> | 2000-05-11 00:17:29 (GMT) |
commit | 18a7211a6c01bc759bfa2dd32b7155206b356885 (patch) | |
tree | fd6e521dcdcb8b122084bd5461cc4ab5faff7a31 /tests | |
parent | 49819cda899108c1cfefcbbbc112bfb30ba8a065 (diff) | |
download | tcl-18a7211a6c01bc759bfa2dd32b7155206b356885.zip tcl-18a7211a6c01bc759bfa2dd32b7155206b356885.tar.gz tcl-18a7211a6c01bc759bfa2dd32b7155206b356885.tar.bz2 |
* doc/namespace.n:
* tests/namespace.test:
* generic/tclNamesp.c (Tcl_NamespaceObjCmd): added 'namespace
exists' command. [Bug: 4665]
Diffstat (limited to 'tests')
-rw-r--r-- | tests/namespace.test | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/tests/namespace.test b/tests/namespace.test index 26eda2d..da884eb 100644 --- a/tests/namespace.test +++ b/tests/namespace.test @@ -6,12 +6,12 @@ # errors. No output means no errors were found. # # Copyright (c) 1997 Sun Microsystems, Inc. -# Copyright (c) 1998-1999 by Scriptics Corporation. +# Copyright (c) 1998-2000 by Scriptics Corporation. # # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. # -# RCS: @(#) $Id: namespace.test,v 1.12 2000/04/10 17:19:02 ericm Exp $ +# RCS: @(#) $Id: namespace.test,v 1.13 2000/05/11 00:17:29 hobbs Exp $ if {[lsearch [namespace children] ::tcltest] == -1} { package require tcltest @@ -641,7 +641,7 @@ test namespace-20.1 {Tcl_NamespaceObjCmd, bad subcommand} { } {1 {wrong # args: should be "namespace subcommand ?arg ...?"}} test namespace-20.2 {Tcl_NamespaceObjCmd, bad subcommand} { list [catch {namespace wombat {}} msg] $msg -} {1 {bad option "wombat": must be children, code, current, delete, eval, export, forget, import, inscope, origin, parent, qualifiers, tail, or which}} +} {1 {bad option "wombat": must be children, code, current, delete, eval, exists, export, forget, import, inscope, origin, parent, qualifiers, tail, or which}} test namespace-20.3 {Tcl_NamespaceObjCmd, abbreviations are okay} { namespace ch :: test_ns_* } {} @@ -737,7 +737,7 @@ test namespace-25.1 {NamespaceEvalCmd, bad args} { } {1 {wrong # args: should be "namespace eval name arg ?arg...?"}} test namespace-25.2 {NamespaceEvalCmd, bad args} { list [catch {namespace test_ns_1} msg] $msg -} {1 {bad option "test_ns_1": must be children, code, current, delete, eval, export, forget, import, inscope, origin, parent, qualifiers, tail, or which}} +} {1 {bad option "test_ns_1": must be children, code, current, delete, eval, exists, export, forget, import, inscope, origin, parent, qualifiers, tail, or which}} catch {unset v} test namespace-25.3 {NamespaceEvalCmd, new namespace} { set v 123 @@ -1094,6 +1094,26 @@ test namespace-38.1 {UpdateStringOfNsName} { [namespace eval {} {namespace current}] } {:: ::} +test namespace-39.1 {NamespaceExistsCmd} { + catch {eval namespace delete [namespace children :: test_ns_*]} + namespace eval ::test_ns_z::test_me { variable foo } + list [namespace exists ::] \ + [namespace exists ::bogus_namespace] \ + [namespace exists ::test_ns_z] \ + [namespace exists test_ns_z] \ + [namespace exists ::test_ns_z::foo] \ + [namespace exists ::test_ns_z::test_me] \ + [namespace eval ::test_ns_z { namespace exists ::test_me }] \ + [namespace eval ::test_ns_z { namespace exists test_me }] \ + [namespace exists :::::test_ns_z] +} {1 0 1 1 0 1 0 1 1} +test namespace-39.2 {NamespaceExistsCmd error} { + list [catch {namespace exists} msg] $msg +} {1 {wrong # args: should be "namespace exists name"}} +test namespace-39.3 {NamespaceExistsCmd error} { + list [catch {namespace exists a b} msg] $msg +} {1 {wrong # args: should be "namespace exists name"}} + # cleanup catch {rename cmd1 {}} catch {unset l} |