OpenFPGA/libs/EXTERNAL/tcl8.6.12/pkgs/itcl4.2.2/tests/mkindex.test

58 lines
2.2 KiB
Plaintext

#
# 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