From bd7c46a7aa8b4f44ef683e22f469033b96d3dd5f Mon Sep 17 00:00:00 2001 From: naruse Date: Wed, 6 Jun 2018 08:03:47 +0000 Subject: Introduce write_timeout to Net::HTTP [Feature #13396] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63587 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/net/http/test_http.rb | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'test/net/http') diff --git a/test/net/http/test_http.rb b/test/net/http/test_http.rb index d3c2aecb9f..778bf01f8f 100644 --- a/test/net/http/test_http.rb +++ b/test/net/http/test_http.rb @@ -529,6 +529,30 @@ module TestNetHTTP_version_1_1_methods assert_equal data, res.entity end + def test_timeout_during_HTTP_session_write + bug4246 = "expected the HTTP session to have timed out but have not. c.f. [ruby-core:34203]" + + th = nil + # listen for connections... but deliberately do not read + TCPServer.open('localhost', 0) {|server| + port = server.addr[1] + + conn = Net::HTTP.new('localhost', port) + conn.write_timeout = 0.01 + conn.open_timeout = 0.1 + + th = Thread.new do + assert_raise(Net::WriteTimeout) { + conn.post('/', "a"*5_000_000) + } + end + assert th.join(10), bug4246 + } + ensure + th.kill + th.join + end + def test_timeout_during_HTTP_session bug4246 = "expected the HTTP session to have timed out but have not. c.f. [ruby-core:34203]" -- cgit v1.2.3