Tcl Source Code

Check-in [59850b158d]
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Missing test cleanups that break later tests.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | core-8-6-branch
Files: files | file ages | folders
SHA3-256: 59850b158d3730d1ab82a773cb9669ee8ed0934e27dcb2730b8dd0bc3b2eb34c
User & Date: dgp 2018-03-15 10:58:13
Context
2018-03-24
10:20
Update TZ info to tzdata2018d. check-in: e257d4cf0b user: jima tags: core-8-6-branch
2018-03-15
13:23
Merge 8.6; An optimization miguel was considering; might be worth a look. Leaf check-in: 4b8fba4c22 user: dgp tags: empty-bodies
11:08
merge 8.6 check-in: ff4b8f1a06 user: dgp tags: core-8-branch
10:58
Missing test cleanups that break later tests. check-in: 59850b158d user: dgp tags: core-8-6-branch
2018-03-14
22:17
Memleak and lifetime management fixes for components of the OO system. check-in: 7041be160d user: dgp tags: core-8-6-branch
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to tests/coroutine.test.

   735    735       }
   736    736       proc boom {} {
   737    737   	cc ; # coro created at level 2
   738    738   	C  ; # and called at level 1
   739    739       }
   740    740       boom   ; # does not crash: the coro floor is a good insulator
   741    741       list
          742  +} -cleanup {
          743  +    rename boom {}; rename cc {}; rename c {}
   742    744   } -result {}
   743    745   
   744    746   test coroutine-8.0.0 {coro inject executed} -body {
   745    747       coroutine demo apply {{} { foreach i {1 2} yield }}
   746    748       demo
   747    749       set ::result none
   748    750       tcl::unsupported::inject demo set ::result inject-executed

Changes to tests/foreach.test.

   208    208   } {a b}
   209    209   test foreach-6.3 {break tests} {catch {break foo} msg} 1
   210    210   test foreach-6.4 {break tests} {
   211    211       catch {break foo} msg
   212    212       set msg
   213    213   } {wrong # args: should be "break"}
   214    214   # Check for bug #406709
   215         -test foreach-6.5 {break tests} {
          215  +test foreach-6.5 {break tests} -body {
   216    216       proc a {} {
   217    217   	set a 1
   218    218   	foreach b b {list [concat a; break]; incr a}
   219    219   	incr a
   220    220       }
   221    221       a
   222         -} {2}
          222  +} -cleanup {
          223  +    rename a {}
          224  +} -result {2}
   223    225   
   224    226   # Test for incorrect "double evaluation" semantics
   225    227   test foreach-7.1 {delayed substitution of body} {
   226    228       proc foo {} {
   227    229          set a 0
   228    230          foreach a [list 1 2 3] "
   229    231              set x $a

Changes to tests/ioCmd.test.

  2053   2053       lappend res [catch {interp eval $idb [list puts  $chan shoo]} msg] $msg
  2054   2054       lappend res [catch {interp eval $idb [list tell  $chan]}      msg] $msg
  2055   2055       lappend res [catch {interp eval $idb [list seek  $chan 1]}    msg] $msg
  2056   2056       lappend res [catch {interp eval $idb [list gets  $chan]}      msg] $msg
  2057   2057       lappend res [catch {interp eval $idb [list close $chan]}      msg] $msg
  2058   2058       set res
  2059   2059   
         2060  +} -cleanup {
         2061  +    interp delete $idb
  2060   2062   } -constraints {testchannel} \
  2061   2063       -result {1 {Owner lost} 1 {Owner lost} 1 {Owner lost} 1 {Owner lost} 1 {Owner lost}}
  2062   2064   
  2063   2065   test iocmd-32.1 {origin interpreter of moved channel destroyed during access} -match glob -body {
  2064   2066   
  2065   2067       set ida [interp create];#puts <<$ida>>
  2066   2068       set idb [interp create];#puts <<$idb>>
................................................................................
  2095   2097   	# wait a bit, give the main thread the time to start its event
  2096   2098   	# loop to wait for the response from B
  2097   2099   	after 2000
  2098   2100   	catch { puts $chan shoo } res
  2099   2101   	set res
  2100   2102       }]
  2101   2103       set res
         2104  +} -cleanup {
         2105  +    interp delete $idb
  2102   2106   } -constraints {testchannel} -result {Owner lost}
  2103   2107   
  2104   2108   test iocmd-32.2 {delete interp of reflected chan} {
  2105   2109       # Bug 3034840
  2106   2110       # Run this test in an interp with memory debugging to panic
  2107   2111       # on the double free
  2108   2112       interp create slave

Changes to tests/ioTrans.test.

  1196   1196   	[catch {interp eval $idb [list close $chan]} msg] $msg
  1197   1197       #lappend res [interp eval $ida {set res}]
  1198   1198       # actions: clear|write|clear|write|clear|flush|limit?|drain|flush
  1199   1199       # The 'tell' is ok, as it passed through the transform to the base channel
  1200   1200       # without invoking the transform handler.
  1201   1201   } -cleanup {
  1202   1202       tempdone
         1203  +    interp delete $idb
  1203   1204   } -result {1 {Owner lost} 0 0 1 {Owner lost} 1 {Owner lost} 1 {Owner lost}}
  1204   1205   test iortrans-11.1 {origin interpreter of moved transform destroyed during access} -setup {
  1205   1206       set ida [interp create];	#puts <<$ida>>
  1206   1207       set idb [interp create];	#puts <<$idb>>
  1207   1208       # Magic to get the test* commands in the slaves
  1208   1209       load {} Tcltest $ida
  1209   1210       load {} Tcltest $idb
................................................................................
  1236   1237   	# wait for the response from B
  1237   1238   	after 50
  1238   1239   	catch { puts $chan shoo } res
  1239   1240   	set res
  1240   1241       }]
  1241   1242   } -cleanup {
  1242   1243       tempdone
         1244  +    interp delete $idb
  1243   1245   } -result {Owner lost}
  1244   1246   test iortrans-11.2 {delete interp of reflected transform} -setup {
  1245   1247       interp create slave
  1246   1248       # Magic to get the test* commands into the slave
  1247   1249       load {} Tcltest slave
  1248   1250   } -constraints {testchannel} -body {
  1249   1251       # Get base channel into the slave