OSDN Git Service

Please enter the commit message for your changes. Lines starting
[eos/base.git] / util / src / TclTk / tcl8.6.12 / pkgs / itcl4.2.2 / tests / mkindex.test
diff --git a/util/src/TclTk/tcl8.6.12/pkgs/itcl4.2.2/tests/mkindex.test b/util/src/TclTk/tcl8.6.12/pkgs/itcl4.2.2/tests/mkindex.test
new file mode 100644 (file)
index 0000000..2a3d4e6
--- /dev/null
@@ -0,0 +1,57 @@
+#
+# Tests for "auto_mkindex" and autoloading facility
+# ----------------------------------------------------------------------
+#   AUTHOR:  Michael J. McLennan
+#            Bell Labs Innovations for Lucent Technologies
+#            mmclennan@lucent.com
+#            http://www.tcltk.com/itcl
+# ----------------------------------------------------------------------
+#            Copyright (c) 1993-1998  Lucent Technologies, Inc.
+# ======================================================================
+# See the file "license.terms" for information on usage and
+# redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES.
+
+package require tcltest 2.1
+namespace import ::tcltest::test
+set ::tcl::inl_mem_test 0
+::tcltest::loadTestedCommands
+package require itcl
+
+# ----------------------------------------------------------------------
+#  Test "auto_mkindex" in the presence of class definitions
+# ----------------------------------------------------------------------
+test mkindex-1.1 {remove any existing tclIndex file} {
+    file delete tclIndex
+    file exists tclIndex
+} {0}
+
+test mkindex-1.2 {build tclIndex based on a test file} {
+    if {[pwd] != $::tcltest::testsDirectory} {
+       file copy -force [file join $::tcltest::testsDirectory mkindex.itcl] \
+               ./mkindex.itcl
+    }
+    auto_mkindex . mkindex.itcl
+    if {[pwd] != $::tcltest::testsDirectory} {
+       file delete -force ./mkindex.itcl
+    }
+    file exists tclIndex
+} {1}
+
+set element "{source [file join . mkindex.itcl]}"
+
+test mkindex-1.3 {examine tclIndex} {
+    namespace eval itcl_mkindex_tmp {
+        set dir "."
+        variable auto_index
+        source tclIndex
+        set result ""
+        foreach elem [lsort [array names auto_index]] {
+            lappend result [list $elem $auto_index($elem)]
+        }
+        set result
+    }
+} "{::Simple2::bump $element} {::Simple2::by $element} {::buried::deep::within $element} {::buried::ens $element} {::buried::inside $element} {::buried::inside::bump $element} {::buried::inside::by $element} {::buried::inside::find $element} {::buried::under::neath $element} {::top::find $element} {::top::notice $element} {Simple1 $element} {Simple2 $element} {ens $element} {top $element}"
+
+file delete tclIndex
+::tcltest::cleanupTests
+return