summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authornahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-06-21 17:44:44 +0000
committernahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-06-21 17:44:44 +0000
commit800c313bde129b5e54d41abd478e1be6dab63016 (patch)
treeabaf528c804a97592ef88c12bbfe8bb3860c8e26 /test
parent7d112260586c99168bc51df274784bcc01db6692 (diff)
* lib/net/http.rb (Net::HTTP.post_form): Do not ignore query part of
the given URI to post. See #655. * test/net/http/test_http.rb, test/net/http/utils.rb: Test it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rw-r--r--test/net/http/test_http.rb14
-rw-r--r--test/net/http/utils.rb1
2 files changed, 12 insertions, 3 deletions
diff --git a/test/net/http/test_http.rb b/test/net/http/test_http.rb
index 9a7a149702..660c0ffa7c 100644
--- a/test/net/http/test_http.rb
+++ b/test/net/http/test_http.rb
@@ -147,22 +147,30 @@ module TestNetHTTP_version_1_1_methods
end
def test_s_post_form
+ url = "http://#{config('host')}:#{config('port')}/"
res = Net::HTTP.post_form(
- URI.parse("http://#{config('host')}:#{config('port')}/"),
+ URI.parse(url),
"a" => "x")
assert_equal ["a=x"], res.body.split(/[;&]/).sort
res = Net::HTTP.post_form(
- URI.parse("http://#{config('host')}:#{config('port')}/"),
+ URI.parse(url),
"a" => "x",
"b" => "y")
assert_equal ["a=x", "b=y"], res.body.split(/[;&]/).sort
res = Net::HTTP.post_form(
- URI.parse("http://#{config('host')}:#{config('port')}/"),
+ URI.parse(url),
"a" => ["x1", "x2"],
"b" => "y")
+ assert_equal url, res['X-request-uri']
assert_equal ["a=x1", "a=x2", "b=y"], res.body.split(/[;&]/).sort
+
+ res = Net::HTTP.post_form(
+ URI.parse(url + '?a=x'),
+ "b" => "y")
+ assert_equal url + '?a=x', res['X-request-uri']
+ assert_equal ["b=y"], res.body.split(/[;&]/).sort
end
def test_patch
diff --git a/test/net/http/utils.rb b/test/net/http/utils.rb
index 227c39fc9b..50f616f29f 100644
--- a/test/net/http/utils.rb
+++ b/test/net/http/utils.rb
@@ -91,6 +91,7 @@ module TestNetHTTPUtils
# echo server
def do_POST(req, res)
res['Content-Type'] = req['Content-Type']
+ res['X-request-uri'] = req.request_uri.to_s
res.body = req.body
res.chunked = @chunked
end