diff options
author | gahr <gahr@gahr.ch> | 2016-02-23 19:44:07 (GMT) |
---|---|---|
committer | gahr <gahr@gahr.ch> | 2016-02-23 19:44:07 (GMT) |
commit | 3942c68ef0518e2328bf52f192005f54e52dfddb (patch) | |
tree | 8765ffe5cbf87046f0802f93a01e94ef44a4c0d6 /tests | |
parent | 35844385d63395c887098709940734d55556397a (diff) | |
parent | 7fd882e910d5e4b402f812759e70b84a6410333d (diff) | |
download | tcl-3942c68ef0518e2328bf52f192005f54e52dfddb.zip tcl-3942c68ef0518e2328bf52f192005f54e52dfddb.tar.gz tcl-3942c68ef0518e2328bf52f192005f54e52dfddb.tar.bz2 |
merge trunk
Diffstat (limited to 'tests')
-rw-r--r-- | tests/env.test | 36 |
1 files changed, 23 insertions, 13 deletions
diff --git a/tests/env.test b/tests/env.test index 83d99e0..9f59fbc 100644 --- a/tests/env.test +++ b/tests/env.test @@ -278,20 +278,20 @@ test env-5.4 {corner cases - unset the env array} -setup { } -cleanup { interp delete i } -result {1 a 1} -test env-5.5 {corner cases - cannot have null entries on Windows} {win} { +test env-5.5 {corner cases - cannot have null entries on Windows} -constraints win -body { set env() a catch {set env()} -} {1} +} -result 1 -test env-6.1 {corner cases - add lots of env variables} {} { +test env-6.1 {corner cases - add lots of env variables} -body { set size [array size env] for {set i 0} {$i < 100} {incr i} { set env(BOGUS$i) $i } expr {[array size env] - $size} -} 100 +} -result 100 -test env-7.1 {[219226]: whole env array should not be unset by read} { +test env-7.1 {[219226]: whole env array should not be unset by read} -body { set n [array size env] set s [array startsearch env] while {[array anymore env $s]} { @@ -300,19 +300,29 @@ test env-7.1 {[219226]: whole env array should not be unset by read} { } array donesearch env $s return $n -} 0 -test env-7.2 {[219226]: links to env elements should not be removed by read} { +} -result 0 + +test env-7.2 {[219226]: links to env elements should not be removed by read} -body { apply {{} { set ::env(test7_2) ok upvar env(test7_2) elem set ::env(PATH) - try { - return $elem - } finally { - unset ::env(test7_2) - } + return $elem + }} +} -result ok + +test env-7.3 {[9b4702]: testing existence of env(some_thing) should not destroy trace} -body { + apply {{} { + catch {unset ::env(test7_3)} + proc foo args { + set ::env(test7_3) ok + } + trace add variable ::env(not_yet_existent) write foo + info exists ::env(not_yet_existent) + set ::env(not_yet_existent) "Now I'm here"; + return [info exists ::env(test7_3)] }} -} ok +} -result 1 # Restore the environment variables at the end of the test. |