diff options
Diffstat (limited to 'tests/stackstruct.test')
-rw-r--r-- | tests/stackstruct.test | 228 |
1 files changed, 0 insertions, 228 deletions
diff --git a/tests/stackstruct.test b/tests/stackstruct.test deleted file mode 100644 index 6a5e3c5..0000000 --- a/tests/stackstruct.test +++ /dev/null @@ -1,228 +0,0 @@ -# stack.test: tests for the stack package. -# -# 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) 1998-2000 by Scriptics Corporation. -# All rights reserved. -# -# RCS: @(#) $Id: stackstruct.test,v 1.1 2000/02/05 03:20:21 ericm Exp $ - -if {[lsearch [namespace children] ::tcltest] == -1} { - package require tcltest - namespace import ::tcltest::* -} - -package require struct -namespace import struct::* - -test stack-0.1 {stack errors} { - stack mystack - catch {stack mystack} msg - mystack destroy - set msg -} "command \"mystack\" already exists, unable to create stack" -test stack-0.2 {stack errors} { - stack mystack - catch {mystack} msg - mystack destroy - set msg -} "wrong # args: should be \"mystack option ?arg arg ...?\"" -test stack-0.3 {stack errors} { - stack mystack - catch {mystack foo} msg - mystack destroy - set msg -} "bad option \"foo\": must be clear, destroy, peek, pop, push, rotate, or size" -test stack-0.4 {stack errors} { - catch {::struct::stack::StackProc mystack} msg - set msg -} "unknown stack \"mystack\"" -test stack-0.5 {stack errors} { - catch {stack set} msg - set msg -} "command \"set\" already exists, unable to create stack" - -test stack-1.1 {stack creation} { - set foo [stack mystack] - set cmd [info commands ::mystack] - set size [mystack size] - mystack destroy - list $foo $cmd $size -} {mystack ::mystack 0} -test stack-1.2 {stack creation} { - set foo [stack] - set cmd [info commands ::$foo] - set size [$foo size] - $foo destroy - list $foo $cmd $size -} {stack1 ::stack1 0} - -test stack-2.1 {stack destroy} { - stack mystack - mystack destroy - info commands ::mystack -} {} -test stack-2.2 {stack destroy} { - stack mystack - mystack destroy - catch {::struct::stack::StackProc mystack} msg - set msg -} "unknown stack \"mystack\"" - -test stack-3.2 {size operation} { - stack mystack - mystack push a b c d e f g - set size [mystack size] - mystack destroy - set size -} 7 -test stack-3.3 {size operation} { - stack mystack - mystack push a b c d e f g - mystack pop 3 - set size [mystack size] - mystack destroy - set size -} 4 -test stack-3.4 {size operation} { - stack mystack - mystack push a b c d e f g - mystack pop 3 - mystack peek 3 - set size [mystack size] - mystack destroy - set size -} 4 - -test stack-4.1 {push operation} { - stack mystack - catch {mystack push} msg - mystack destroy - set msg -} "wrong # args: should be \"mystack push item ?item ...?\"" -test stack-4.2 {push operation, singleton items} { - stack mystack - mystack push a - mystack push b - mystack push c - set result [list [mystack pop] [mystack pop] [mystack pop]] - mystack destroy - set result -} "c b a" -test stack-4.3 {push operation, multiple items} { - stack mystack - mystack push a b c - set result [list [mystack pop] [mystack pop] [mystack pop]] - mystack destroy - set result -} "c b a" -test stack-4.4 {push operation, spaces in items} { - stack mystack - mystack push a b "foo bar" - set result [list [mystack pop] [mystack pop] [mystack pop]] - mystack destroy - set result -} [list "foo bar" b a] -test stack-4.5 {push operation, bad chars in items} { - stack mystack - mystack push a b \{ - set result [list [mystack pop] [mystack pop] [mystack pop]] - mystack destroy - set result -} [list \{ b a] - -test stack-5.1 {pop operation} { - stack mystack - mystack push a - mystack push b - mystack push c - set result [list [mystack pop] [mystack pop] [mystack pop]] - mystack destroy - set result -} [list c b a] -test stack-5.2 {pop operation, multiple items} { - stack mystack - mystack push a - mystack push b - mystack push c - set result [mystack pop 3] - mystack destroy - set result -} [list c b a] - -test stack-6.1 {peek operation} { - stack mystack - mystack push a - mystack push b - mystack push c - set result [list [mystack peek] [mystack peek] [mystack peek]] - mystack destroy - set result -} [list c c c] -test stack-6.2 {pop operation, multiple items} { - stack mystack - mystack push a - mystack push b - mystack push c - set result [list [mystack peek 3] [mystack pop 3]] - mystack destroy - set result -} [list [list c b a] [list c b a]] - -test stack-7.1 {clear operation} { - stack mystack - mystack push a - mystack push b - mystack push c - set result [list [mystack peek 3]] - mystack clear - lappend result [mystack size] - mystack destroy - set result -} [list [list c b a] 0] - -test stack-8.1 {rotate operation} { - stack mystack - mystack push a b c d e f g h - mystack rotate 3 1 - set result [mystack peek [mystack size]] - mystack destroy - set result -} [list g f h e d c b a] -test stack-8.2 {rotate operation} { - stack mystack - mystack push a b c d e f g h - mystack rotate 3 2 - set result [mystack peek [mystack size]] - mystack destroy - set result -} [list f h g e d c b a] -test stack-8.3 {rotate operation} { - stack mystack - mystack push a b c d e f g h - mystack rotate 3 5 - set result [mystack peek [mystack size]] - mystack destroy - set result -} [list f h g e d c b a] -test stack-8.4 {rotate operation} { - stack mystack - mystack push a b c d e f g h - mystack rotate 8 1 - set result [mystack peek [mystack size]] - mystack destroy - set result -} [list g f e d c b a h] -test stack-8.4 {rotate operation} { - stack mystack - mystack push a b c d e f g h - mystack rotate 8 -1 - set result [mystack peek [mystack size]] - mystack destroy - set result -} [list a h g f e d c b] - - -::tcltest::cleanupTests |