interp.test

来自「这是一个Linux下的集成开发环境」· TEST 代码 · 共 77 行

TEST
77
字号
## Tests for using [incr Tcl] in slave interpreters# ----------------------------------------------------------------------#   AUTHOR:  Michael J. McLennan#            Bell Labs Innovations for Lucent Technologies#            mmclennan@lucent.com#            http://www.tcltk.com/itcl##      RCS:  $Id: interp.test,v 1.1 2003/02/05 10:53:55 mdejong Exp $# ----------------------------------------------------------------------#            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 tcltestnamespace import -force ::tcltest::*if {[string compare test [info procs test]] == 1} then {source defs}package require Itcl# ----------------------------------------------------------------------#  Make sure that slave interpreters can be created and loaded#  with [incr Tcl]...# ----------------------------------------------------------------------test interp-1.1 {create a slave interp with [incr Tcl]} {    interp create slave    load "" Itcl slave    list [slave eval "namespace children :: itcl"] [interp delete slave]} {::itcl {}}test interp-1.2 {create a safe slave interp with [incr Tcl]} {    interp create -safe slave    load "" Itcl slave    list [slave eval "namespace children :: itcl"] [interp delete slave]} {::itcl {}}test interp-1.3 {errors are okay when slave interp is deleted} {    interp create slave    load "" Itcl slave    slave eval {        itcl::class Troublemaker {            destructor { error "cannot delete this object" }        }        itcl::class Foo {            variable obj ""            constructor {} {                set obj [Troublemaker #auto]            }            destructor {                delete object $obj            }        }        Foo f    }    interp delete slave} {}test interp-1.4 {one namespace can cause another to be destroyed} {    interp create slave    load "" Itcl slave    slave eval {        namespace eval group {            itcl::class base1 {}            itcl::class base2 {}        }        itcl::class TroubleMaker {            inherit group::base1 group::base2        }    }    interp delete slave} {}::tcltest::cleanupTestsreturn

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?