mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* 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/trunk@56596 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
5fa7cdbde5
commit
8ec6fcb2f6
3 changed files with 39 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
|||
Sat Nov 5 23:03:54 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 5 22:51:06 2016 Tanaka Akira <akr@fsij.org>
|
||||
|
||||
* lib/time.rb (make_time): "now" argument as nil works again.
|
||||
|
|
|
@ -1425,7 +1425,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
|
||||
|
||||
|
|
|
@ -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',
|
||||
|
|
Loading…
Add table
Reference in a new issue