summaryrefslogtreecommitdiffstats
path: root/tests/eval.test
diff options
context:
space:
mode:
Diffstat (limited to 'tests/eval.test')
-rw-r--r--tests/eval.test46
1 files changed, 36 insertions, 10 deletions
diff --git a/tests/eval.test b/tests/eval.test
index 22de6af..70ceac8 100644
--- a/tests/eval.test
+++ b/tests/eval.test
@@ -1,23 +1,21 @@
# Commands covered: eval
#
-# This file contains a collection of tests for one or more of the Tcl
-# built-in commands. Sourcing this file into Tcl runs the tests and
-# generates output for errors. No output means no errors were found.
+# This file contains a collection of tests for one or more of the Tcl built-in
+# commands. Sourcing this file into Tcl runs the tests and generates output
+# for errors. No output means no errors were found.
#
# Copyright (c) 1991-1993 The Regents of the University of California.
# Copyright (c) 1994 Sun Microsystems, Inc.
# Copyright (c) 1998-1999 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: eval.test,v 1.6 2004/05/19 12:23:13 dkf Exp $
+# See the file "license.terms" for information on usage and redistribution of
+# this file, and for a DISCLAIMER OF ALL WARRANTIES.
-if {[lsearch [namespace children] ::tcltest] == -1} {
+if {"::tcltest" ni [namespace children]} {
package require tcltest
namespace import -force ::tcltest::*
}
-
+
test eval-1.1 {single argument} {
eval {format 22}
} 22
@@ -47,7 +45,7 @@ test eval-2.5 {error in eval'ed command: setting errorInfo} {
set a 1
error "test error"
}} msg
- set errorInfo
+ set ::errorInfo
} "test error
while executing
\"error \"test error\"\"
@@ -58,6 +56,34 @@ test eval-2.5 {error in eval'ed command: setting errorInfo} {
error \"test error\"
}\""
+test eval-3.1 {eval and pure lists} {
+ eval [list list 1 2 3 4 5]
+} {1 2 3 4 5}
+test eval-3.2 {concatenating eval and pure lists} {
+ eval [list list 1] [list 2 3 4 5]
+} {1 2 3 4 5}
+test eval-3.3 {eval and canonical lists} {
+ set cmd [list list 1 2 3 4 5]
+ # Force existance of utf-8 rep
+ set dummy($cmd) $cmd
+ unset dummy
+ eval $cmd
+} {1 2 3 4 5}
+test eval-3.4 {concatenating eval and canonical lists} {
+ set cmd [list list 1]
+ set cmd2 [list 2 3 4 5]
+ # Force existance of utf-8 rep
+ set dummy($cmd) $cmd
+ set dummy($cmd2) $cmd2
+ unset dummy
+ eval $cmd $cmd2
+} {1 2 3 4 5}
+
# cleanup
::tcltest::cleanupTests
return
+
+# Local Variables:
+# mode: tcl
+# fill-column: 78
+# End: