1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
|
# -*- tcl -*-
# Graph tests - graph/arc/node set (attribute set)
# Copyright (c) 2006 Andreas Kupries <andreas_kupries@users.sourceforge.net>
# All rights reserved.
# RCS: @(#) $Id: set.test,v 1.3 2008/03/07 06:51:39 andreas_kupries Exp $
# Syntax: graph set KEY ?VALUE?
# Syntax: graph arc set ARC KEY ?VALUE?
# Syntax: graph node set NODE KEY ?VALUE?
# -------------------------------------------------------------------------
foreach {e ex stem mp mk} {
arc Arc {mygraph arc} {arc } x
node Node {mygraph node} {node } x
graph Graph {mygraph} {} {}
} {
AttrSetup
# -------------------------------------------------------------------------
# Wrong # args: Missing, Too many
test graph-${impl}-${setimpl}-${e}-set-1.0 "$e set, wrong # args, missing" {
SETUP
catch {CMD set} msg
mygraph destroy
set msg
} [tmWrongA "${mp}set" "${mp}key ?value?" 0 "${mp}key args"] ; # {}
test graph-${impl}-${setimpl}-${e}-set-1.1 "$e set, wrong # args, missing" !graph {
SETUP
catch {CMD set a} msg
mygraph destroy
set msg
} [tmWrongA "${mp}set" "${mp}key ?value?" 1 "${mp}key args"] ; # {}
test graph-${impl}-${setimpl}-${e}-set-1.2 "$e set, wrong # args, too many" {
SETUP
catch {CMD set a b c d} msg
mygraph destroy
set msg
} [tmE \
"wrong # args: should be \"$MY ${mp}set ${mp}key ?value?\"" \
[tmTooManyA "${mp}set" "${mp}key ?value?"]] ; # {}
# -------------------------------------------------------------------------
# Logical arguments checks and failures
test graph-${impl}-${setimpl}-${e}-set-2.0 "$e set, missing $e" !graph {
SETUP
catch {CMD set x data} msg
mygraph destroy
set msg
} [Missing$ex $MY x] ; # {}
test graph-${impl}-${setimpl}-${e}-set-2.1 "$e set, no attributes (retrieval)" {
SETUP
$ex
catch {SetR$ex foo} msg
mygraph destroy
set msg
} [MissingKey $mk $e foo] ; # {}
test graph-${impl}-${setimpl}-${e}-set-2.2 "$e set, missing key (retrieval)" {
SETUP
$ex
SetW$ex data ""
catch {SetR$ex foo} msg
mygraph destroy
set msg
} [MissingKey $mk $e foo] ; # {}
# -------------------------------------------------------------------------
# Ok arguments.
test graph-${impl}-${setimpl}-${e}-set-3.0 "$e set, set value, result" {
SETUP
$ex
set result {}
lappend result [SetW$ex baz foobar]
lappend result [Get$ex baz]
mygraph destroy
set result
} {foobar foobar} ; # {}
test graph-${impl}-${setimpl}-${e}-set-3.1 "$e set, retrieve value" {
SETUP
$ex
SetW$ex baz foobar
set result [SetR$ex baz]
mygraph destroy
set result
} foobar ; # {}
}
# -------------------------------------------------------------------------
|