aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorSteve Bennett <steveb@workware.net.au>2010-09-28 07:37:21 +1000
committerSteve Bennett <steveb@workware.net.au>2010-10-15 11:02:55 +1000
commit4a965dd5f0848337d4da4c584381cb1150f77516 (patch)
treed6526c5e64bfc6202178f908cdeda9d1229fcb24 /tests
parent2f5f6f266e2393a8351790c61de57b7d42f710ab (diff)
downloadjimtcl-4a965dd5f0848337d4da4c584381cb1150f77516.zip
jimtcl-4a965dd5f0848337d4da4c584381cb1150f77516.tar.gz
jimtcl-4a965dd5f0848337d4da4c584381cb1150f77516.tar.bz2
Change tree API to be object-based
A small change, but makes for a more natural interface Signed-off-by: Steve Bennett <steveb@workware.net.au>
Diffstat (limited to 'tests')
-rw-r--r--tests/tree.test86
1 files changed, 43 insertions, 43 deletions
diff --git a/tests/tree.test b/tests/tree.test
index d9aa389..e744708 100644
--- a/tests/tree.test
+++ b/tests/tree.test
@@ -8,84 +8,84 @@ proc dputs {msg} {
}
test tree-1.1 "Create tree" {
- tree create pt
+ set pt [tree]
return 1
} {1}
test tree-1.2 "Root node depth" {
- pt depth root
+ $pt depth root
} {0}
test tree-1.3 "Access invalid node" {
list [catch {
- pt depth bogus
+ $pt depth bogus
} msg] $msg
} {1 {key "bogus" not found in dictionary}}
test tree-1.4 "Set key/value" {
- pt set root key value
- pt set root type root
- pt set root name rootnode
- pt set root values {}
- pt get root key
+ $pt set root key value
+ $pt set root type root
+ $pt set root name rootnode
+ $pt set root values {}
+ $pt get root key
} {value}
test tree-1.5 "Add child node" {
- set n [pt insert root]
- pt set $n childkey childvalue
- pt set $n type level1type
- pt set $n name childnode1
- pt set $n values {label testlabel}
- pt get $n childkey
+ set n [$pt insert root]
+ $pt set $n childkey childvalue
+ $pt set $n type level1type
+ $pt set $n name childnode1
+ $pt set $n values {label testlabel}
+ $pt get $n childkey
} {childvalue}
test tree-1.6 "Add child, child node" {
- set nn [pt insert $n]
- pt set $nn childkey2 childvalue2
- pt set $nn type level2type
- pt set $nn name childnode2
- pt set $nn values {label testlabel storage none}
- pt get $nn childkey2
+ set nn [$pt insert $n]
+ $pt set $nn childkey2 childvalue2
+ $pt set $nn type level2type
+ $pt set $nn name childnode2
+ $pt set $nn values {label testlabel storage none}
+ $pt get $nn childkey2
} {childvalue2}
test tree-1.7 "Key exists true" {
- pt keyexists $nn childkey2
+ $pt keyexists $nn childkey2
} {1}
test tree-1.7 "Key exists false" {
- pt keyexists $n boguskey
+ $pt keyexists $n boguskey
} {0}
test tree-1.8 "lappend new key" {
- pt lappend $n newkey first
+ $pt lappend $n newkey first
} {first}
test tree-1.9 "lappend existing key" {
- pt lappend $n newkey next
+ $pt lappend $n newkey next
} {first next}
test tree-2.0 "Add more nodes" {
- set c [pt insert root]
- pt set $c name root.c2
- set c [pt insert root]
- pt set $c name root.c3
- set c [pt insert $n]
- pt set $c name n.c4
- set c [pt insert $n]
- pt set $c name n.c5
- set c [pt insert $c]
- pt set $c name n.c5.c6
+ set c [$pt insert root]
+ $pt set $c name root.c2
+ set c [$pt insert root]
+ $pt set $c name root.c3
+ set c [$pt insert $n]
+ $pt set $c name n.c4
+ set c [$pt insert $n]
+ $pt set $c name n.c5
+ set c [$pt insert $c]
+ $pt set $c name n.c5.c6
return 1
} {1}
test tree-2.1 "walk dfs" {
set result {}
dputs ""
- pt walk root dfs {action n} {
- set indent [string repeat " " [pt depth $n]]
+ $pt walk root dfs {action n} {
+ set indent [string repeat " " [$pt depth $n]]
if {$action == "enter"} {
- lappend result [pt get $n name]
- dputs "$indent[pt get $n name]"
+ lappend result [$pt get $n name]
+ dputs "$indent[$pt get $n name]"
}
}
dputs ""
@@ -94,9 +94,9 @@ test tree-2.1 "walk dfs" {
test tree-2.2 "walk dfs exit" {
set result {}
- pt walk root dfs {action n} {
+ $pt walk root dfs {action n} {
if {$action == "exit"} {
- lappend result [pt get $n name]
+ lappend result [$pt get $n name]
}
}
set result
@@ -104,12 +104,12 @@ test tree-2.2 "walk dfs exit" {
test tree-2.3 "walk bfs" {
set result {}
- pt walk root bfs {action n} {
+ $pt walk root bfs {action n} {
if {$action == "enter"} {
- lappend result [pt get $n name]
+ lappend result [$pt get $n name]
}
}
set result
} {rootnode childnode1 root.c2 root.c3 childnode2 n.c4 n.c5 n.c5.c6}
-tree destroy pt
+$pt destroy