1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

merge revision(s) 56596: [Backport #12890]

* lib/net/http.rb (transport_request): other than HTTPContinue
	  in 1xx (HTTPInformation) also needs to continue. [Bug #12890]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@56782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nagachika 2016-11-14 17:48:09 +00:00
parent 61b9d4a288
commit edf505a7e8
4 changed files with 40 additions and 2 deletions

View file

@ -1,3 +1,8 @@
Tue Nov 15 02:45:44 2016 NARUSE, Yui <naruse@ruby-lang.org>
* lib/net/http.rb (transport_request): other than HTTPContinue
in 1xx (HTTPInformation) also needs to continue. [Bug #12890]
Sat Nov 12 01:05:45 2016 SHIBATA Hiroshi <hsbt@ruby-lang.org>
* object.c: Improve documentation for Float conversion.

View file

@ -1436,7 +1436,7 @@ module Net #:nodoc:
begin
res = HTTPResponse.read_new(@socket)
res.decode_content = req.decode_content
end while res.kind_of?(HTTPContinue)
end while res.kind_of?(HTTPInformation)
res.uri = req.uri

View file

@ -894,6 +894,39 @@ class TestNetHTTPContinue < Test::Unit::TestCase
end
end
class TestNetHTTPSwitchingProtocols < Test::Unit::TestCase
CONFIG = {
'host' => '127.0.0.1',
'proxy_host' => nil,
'proxy_port' => nil,
'chunked' => true,
}
include TestNetHTTPUtils
def logfile
@debug = StringIO.new('')
end
def mount_proc(&block)
@server.mount('/continue', WEBrick::HTTPServlet::ProcHandler.new(block.to_proc))
end
def test_info
mount_proc {|req, res|
req.instance_variable_get(:@socket) << "HTTP/1.1 101 Switching Protocols\r\n\r\n"
res.body = req.query['body']
}
start {|http|
http.continue_timeout = 0.2
http.request_post('/continue', 'body=BODY') {|res|
assert_equal('BODY', res.read_body)
}
}
assert_match(/HTTP\/1.1 101 Switching Protocols/, @debug.string)
end
end
class TestNetHTTPKeepAlive < Test::Unit::TestCase
CONFIG = {
'host' => '127.0.0.1',

View file

@ -1,6 +1,6 @@
#define RUBY_VERSION "2.3.2"
#define RUBY_RELEASE_DATE "2016-11-15"
#define RUBY_PATCHLEVEL 213
#define RUBY_PATCHLEVEL 214
#define RUBY_RELEASE_YEAR 2016
#define RUBY_RELEASE_MONTH 11