Commit a53ebb4c authored by Pieter Noordhuis's avatar Pieter Noordhuis
Browse files

Don't abort test suite when the server block has a return value

parent 87c74dfa
...@@ -230,7 +230,11 @@ proc start_server {options {code undefined}} { ...@@ -230,7 +230,11 @@ proc start_server {options {code undefined}} {
# execute provided block # execute provided block
set curnum $::testnum set curnum $::testnum
catch { uplevel 1 $code } err if {![catch { uplevel 1 $code } err]} {
# zero exit status is good
unset err
}
if {$curnum == $::testnum} { if {$curnum == $::testnum} {
# don't check for leaks when no tests were executed # don't check for leaks when no tests were executed
dict set srv "skipleaks" 1 dict set srv "skipleaks" 1
...@@ -241,6 +245,7 @@ proc start_server {options {code undefined}} { ...@@ -241,6 +245,7 @@ proc start_server {options {code undefined}} {
# allow an exception to bubble up the call chain but still kill this # allow an exception to bubble up the call chain but still kill this
# server, because we want to reuse the ports when the tests are re-run # server, because we want to reuse the ports when the tests are re-run
if {[info exists err]} {
if {$err eq "exception"} { if {$err eq "exception"} {
puts [format "Logged warnings (pid %d):" [dict get $srv "pid"]] puts [format "Logged warnings (pid %d):" [dict get $srv "pid"]]
set warnings [warnings_from_file [dict get $srv "stdout"]] set warnings [warnings_from_file [dict get $srv "stdout"]]
...@@ -258,6 +263,7 @@ proc start_server {options {code undefined}} { ...@@ -258,6 +263,7 @@ proc start_server {options {code undefined}} {
puts $err puts $err
exit 1 exit 1
} }
}
set ::tags [lrange $::tags 0 end-[llength $tags]] set ::tags [lrange $::tags 0 end-[llength $tags]]
kill_server $srv kill_server $srv
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment