summaryrefslogtreecommitdiff
path: root/test/uri
diff options
context:
space:
mode:
authorNARUSE, Yui <naruse@airemix.jp>2019-01-13 08:58:00 +0900
committerHiroshi SHIBATA <hsbt@ruby-lang.org>2022-10-13 11:04:06 +0900
commitdd5118f8524c425894d4716b787837ad7380bb0d (patch)
treeba01701363c3c4f06d4fd5c2ed6a132349e6d678 /test/uri
parent166140aa289e6edfd9b023b87c9e6d4434bb29bc (diff)
downloadruby-dd5118f8524c425894d4716b787837ad7380bb0d.tar.gz
URI.parse should set empty string in host instead of nil
Diffstat (limited to 'test/uri')
-rw-r--r--test/uri/test_generic.rb9
-rw-r--r--test/uri/test_ldap.rb6
2 files changed, 11 insertions, 4 deletions
diff --git a/test/uri/test_generic.rb b/test/uri/test_generic.rb
index fdb405e396..3897c3d6ee 100644
--- a/test/uri/test_generic.rb
+++ b/test/uri/test_generic.rb
@@ -24,7 +24,8 @@ class URI::TestGeneric < Test::Unit::TestCase
assert_equal "file:///foo", URI("file:///foo").to_s
assert_equal "postgres:///foo", URI("postgres:///foo").to_s
- assert_equal "http:/foo", URI("http:///foo").to_s
+ assert_equal "http:///foo", URI("http:///foo").to_s
+ assert_equal "http:/foo", URI("http:/foo").to_s
end
def test_parse
@@ -157,6 +158,12 @@ class URI::TestGeneric < Test::Unit::TestCase
assert_equal(nil, url.user)
assert_equal(nil, url.password)
assert_equal(nil, url.userinfo)
+
+ # sec-156615
+ url = URI.parse('http:////example.com')
+ # must be empty string to identify as path-abempty, not path-absolute
+ assert_equal('', url.host)
+ assert_equal('http:////example.com', url.to_s)
end
def test_parse_scheme_with_symbols
diff --git a/test/uri/test_ldap.rb b/test/uri/test_ldap.rb
index 64845e487a..2625b24103 100644
--- a/test/uri/test_ldap.rb
+++ b/test/uri/test_ldap.rb
@@ -39,7 +39,7 @@ class TestLDAP < Test::Unit::TestCase
# from RFC2255, section 6.
{
'ldap:///o=University%20of%20Michigan,c=US' =>
- ['ldap', nil, URI::LDAP::DEFAULT_PORT,
+ ['ldap', '', URI::LDAP::DEFAULT_PORT,
'o=University%20of%20Michigan,c=US',
nil, nil, nil, nil],
@@ -74,12 +74,12 @@ class TestLDAP < Test::Unit::TestCase
nil, '(int=%5c00%5c00%5c00%5c04)', nil, nil],
'ldap:///??sub??bindname=cn=Manager%2co=Foo' =>
- ['ldap', nil, URI::LDAP::DEFAULT_PORT,
+ ['ldap', '', URI::LDAP::DEFAULT_PORT,
'',
nil, 'sub', nil, 'bindname=cn=Manager%2co=Foo'],
'ldap:///??sub??!bindname=cn=Manager%2co=Foo' =>
- ['ldap', nil, URI::LDAP::DEFAULT_PORT,
+ ['ldap', '', URI::LDAP::DEFAULT_PORT,
'',
nil, 'sub', nil, '!bindname=cn=Manager%2co=Foo'],
}.each do |url2, ary|