merge revision(s) 49104,49105: [Backport #10692]

* test/net/http/test_http.rb (_test_send_request__HEAD): Added
	  failing test for send_request with HEAD method.

	* lib/net/http.rb (Net::HTTP#send_request): there is no response body
	  with HEAD request. Patch by @rodrigosaito [fix GH-520]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@49278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
naruse 2015-01-16 07:50:04 +00:00
parent dd52ab5a95
commit 008c7b108b
4 changed files with 24 additions and 2 deletions

View file

@ -1,3 +1,13 @@
Fri Jan 16 16:49:04 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* lib/net/http.rb (Net::HTTP#send_request): there is no response body
with HEAD request. Patch by @rodrigosaito [fix GH-520]
Fri Jan 16 16:49:04 2015 SHIBATA Hiroshi <shibata.hiroshi@gmail.com>
* test/net/http/test_http.rb (_test_send_request__HEAD): Added
failing test for send_request with HEAD method.
Fri Jan 16 14:56:08 2015 Eric Wong <e@80x24.org>
* symbol.c (rb_gc_free_dsymbol): delete from global fstr hash

View file

@ -1350,7 +1350,8 @@ module Net #:nodoc:
# puts response.body
#
def send_request(name, path, data = nil, header = nil)
r = HTTPGenericRequest.new(name,(data ? true : false),true,path,header)
has_response_body = name != 'HEAD'
r = HTTPGenericRequest.new(name,(data ? true : false),has_response_body,path,header)
request r, data
end

View file

@ -578,6 +578,7 @@ module TestNetHTTP_version_1_2_methods
def test_send_request
start {|http|
_test_send_request__GET http
_test_send_request__HEAD http
_test_send_request__POST http
}
end
@ -592,6 +593,16 @@ module TestNetHTTP_version_1_2_methods
assert_equal $test_net_http_data, res.body
end
def _test_send_request__HEAD(http)
res = http.send_request('HEAD', '/')
assert_kind_of Net::HTTPResponse, res
unless self.is_a?(TestNetHTTP_v1_2_chunked)
assert_not_nil res['content-length']
assert_equal $test_net_http_data.size, res['content-length'].to_i
end
assert_nil res.body
end
def _test_send_request__POST(http)
data = 'aaabbb cc ddddddddddd lkjoiu4j3qlkuoa'
res = http.send_request('POST', '/', data, 'content-type' => 'application/x-www-form-urlencoded')

View file

@ -1,6 +1,6 @@
#define RUBY_VERSION "2.2.0"
#define RUBY_RELEASE_DATE "2015-01-16"
#define RUBY_PATCHLEVEL 11
#define RUBY_PATCHLEVEL 12
#define RUBY_RELEASE_YEAR 2015
#define RUBY_RELEASE_MONTH 1