diff options
author | dgp <dgp@users.sourceforge.net> | 2017-05-23 12:25:07 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2017-05-23 12:25:07 (GMT) |
commit | d23fe52664cbef62956cc8ba4e689b9873992b0c (patch) | |
tree | 216cec543ae24c904877986891d6388f6655aed8 /tests/http.test | |
parent | 674ed242bc26f2a7d7e773dfd456fd95164f8bac (diff) | |
parent | 12e58887228678c386542cde6966948245f7491d (diff) | |
download | tcl-d23fe52664cbef62956cc8ba4e689b9873992b0c.zip tcl-d23fe52664cbef62956cc8ba4e689b9873992b0c.tar.gz tcl-d23fe52664cbef62956cc8ba4e689b9873992b0c.tar.bz2 |
merge trunk
Diffstat (limited to 'tests/http.test')
-rw-r--r-- | tests/http.test | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/tests/http.test b/tests/http.test index 12ad475..210c2fb 100644 --- a/tests/http.test +++ b/tests/http.test @@ -36,7 +36,6 @@ proc bgerror {args} { puts stderr $errorInfo } -set port 8010 set bindata "This is binary data\x0d\x0amore\x0dmore\x0amore\x00null" catch {unset data} @@ -55,9 +54,8 @@ catch {package require Thread 2.7-} if {[catch {package present Thread}] == 0 && [file exists $httpdFile]} { set httpthread [thread::create -preserved] thread::send $httpthread [list source $httpdFile] - thread::send $httpthread [list set port $port] thread::send $httpthread [list set bindata $bindata] - thread::send $httpthread {httpd_init $port} + thread::send $httpthread {httpd_init 0; set port} port puts "Running httpd in thread $httpthread" } else { if {![file exists $httpdFile]} { @@ -69,10 +67,8 @@ if {[catch {package present Thread}] == 0 && [file exists $httpdFile]} { # Let the OS pick the port; that's much more flexible if {[catch {httpd_init 0} listen]} { puts "Cannot start http server, http test skipped" - unset port + catch {unset port} return - } else { - set port [lindex [fconfigure $listen -sockname] 2] } } @@ -592,6 +588,14 @@ test http-4.15 {http::Event} -body { } -cleanup { catch {http::cleanup $token} } -returnCodes 1 -match glob -result "couldn't open socket*" +test http-4.16 {Leak with Close vs Keepalive (bug [6ca52aec14]} -body { + set before [chan names] + set token [http::geturl $url -headers {X-Connection keep-alive}] + http::cleanup $token + update + set after [chan names] + expr {$before eq $after} +} -result 1 test http-5.1 {http::formatQuery} { http::formatQuery name1 value1 name2 "value two" |