1# Commands covered: concat 2# 3# This file contains a collection of tests for one or more of the Tcl built-in 4# commands. Sourcing this file into Tcl runs the tests and generates output 5# for errors. No output means no errors were found. 6# 7# Copyright © 1991-1993 The Regents of the University of California. 8# Copyright © 1994-1996 Sun Microsystems, Inc. 9# Copyright © 1998-1999 Scriptics Corporation. 10# 11# See the file "license.terms" for information on usage and redistribution of 12# this file, and for a DISCLAIMER OF ALL WARRANTIES. 13 14if {"::tcltest" ni [namespace children]} { 15 package require tcltest 2.5 16 namespace import -force ::tcltest::* 17} 18 19test concat-1.1 {simple concatenation} { 20 concat a b c d e f g 21} {a b c d e f g} 22test concat-1.2 {merging lists together} { 23 concat a {b c d} {e f g h} 24} {a b c d e f g h} 25test concat-1.3 {merge lists, retain sub-lists} { 26 concat a {b {c d}} {{e f}} g h 27} {a b {c d} {e f} g h} 28test concat-1.4 {special characters} { 29 concat a\{ {b \{c d} \{d 30} "a{ b \\{c d {d" 31 32test concat-2.1 {error: one empty argument} { 33 concat {} 34} {} 35 36test concat-3.1 {error: no arguments} { 37 list [catch concat msg] $msg 38} {0 {}} 39 40test concat-4.1 {pruning off extra white space} { 41 concat {} {a b c} 42} {a b c} 43test concat-4.2 {pruning off extra white space} { 44 concat x y " a b c \n\t " " " " def " 45} {x y a b c def} 46test concat-4.3 {pruning off extra white space sets length correctly} { 47 llength [concat { {{a}} }] 48} 1 49 50# cleanup 51::tcltest::cleanupTests 52return 53 54# Local Variables: 55# mode: tcl 56# fill-column: 78 57# End: 58