From 21ab98a997d2ed44c9c95cf5434a42561b2cd688 Mon Sep 17 00:00:00 2001 From: naruse Date: Mon, 3 Nov 2014 00:33:47 +0000 Subject: * lib/uri/rfc3986_parser.rb (URI::RFC3986_Parser::RFC3986_URI): allow '[' and ']' for URI input (and escape). [Bug #10402] * lib/uri/generic.rb (URI#query=): escape '[', '\', and ']'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/uri/test_generic.rb | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'test') diff --git a/test/uri/test_generic.rb b/test/uri/test_generic.rb index 0202008d44..5767c2cc05 100644 --- a/test/uri/test_generic.rb +++ b/test/uri/test_generic.rb @@ -713,6 +713,10 @@ class URI::TestGeneric < Test::Unit::TestCase assert_equal('http://foo:bar@zab:8080/?a=1', uri.to_s) assert_equal('b123', uri.fragment = 'b123') assert_equal('http://foo:bar@zab:8080/?a=1#b123', uri.to_s) + assert_equal('a[]=1', uri.query = 'a[]=1') + assert_equal('http://foo:bar@zab:8080/?a%5B%5D=1#b123', uri.to_s) + uri = URI.parse('http://foo:bar@zab:8080/?a[]=1#b123') + assert_equal('http://foo:bar@zab:8080/?a%5B%5D=1#b123', uri.to_s) uri = URI.parse('http://example.com') assert_raise(URI::InvalidURIError) { uri.password = 'bar' } -- cgit v1.2.3