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 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130
|
# lazyset.test - Copyright (c) 2018 Roy Keene
#
# -------------------------------------------------------------------------
source [file join \
[file dirname [file dirname [file join [pwd] [info script]]]] \
devtools testutilities.tcl]
testsNeedTcl 8.5
testsNeedTcltest 2
testing {
useLocal lazyset.tcl lazyset
}
# -------------------------------------------------------------------------
test lazyset-basic-1.0 {} -body {
::lazyset::variable -appendArgs false test {
return -level 0 ok
}
set test
} -cleanup {
unset test
} -result {ok}
test lazyset-withargs-1.0 {} -body {
::lazyset::variable test [list apply {{name} {
return ok
}}]
set test
} -cleanup {
unset test
} -result {ok}
test lazyset-withargs-2.0 {} -body {
::lazyset::variable test [list apply {{result name} {
return $result
}} ok]
set test
} -cleanup {
unset test
} -result {ok}
test lazyset-inscope-1.0 {} -body {
::lazyset::variable -appendArgs false test {
set x 0
return -level 0 ok
}
set test
set x
} -cleanup {
unset test
unset x
} -result {0}
test lazyset-onlyonce-1.0 {} -body {
set x 0
::lazyset::variable -appendArgs false test {
incr x
return -level 0 ok
}
set test
set test
set x
} -cleanup {
unset test
unset x
} -result {1}
test lazyset-onlyonce-2.0 {} -body {
set x 0
::lazyset::variable -appendArgs false -array true test {
incr x
return -level 0 ok
}
set test(a)
set test(a)
set x
} -cleanup {
unset test
unset x
} -result {1}
test lazyset-onlyonce-3.0 {} -body {
set x 0
::lazyset::variable -appendArgs false -array true test {
incr x
return -level 0 ok
}
set test(a)
set test(a)
set test(b)
set test(b)
set x
} -cleanup {
unset test
unset x
} -result {2}
test lazyset-array-1.0 {} -body {
::lazyset::variable -appendArgs false -array true test {
return -level 0 ok
}
set result $test(a)
append result $test(b)
} -cleanup {
unset test
unset result
} -result {okok}
test lazyset-array-1.0 {} -body {
::lazyset::variable -array true test [list apply {{_ index} {
return $index
}}]
set result $test(a)
append result $test(b)
} -cleanup {
unset test
unset result
} -result {ab}
# -------------------------------------------------------------------------
testsuiteCleanup
# Local variables:
# mode: tcl
# indent-tabs-mode: nil
# End:
|