mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
resolv.rb: case-insensitive comparison
* lib/resolv.rb (Resolv::DNS::Name#==): DNS is case-insensitive, so the comparison should be case-insensitive as well. [ruby-core:66498] [Bug #10550] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
1441d9da99
commit
69a7bb31f9
3 changed files with 15 additions and 2 deletions
|
@ -1,3 +1,9 @@
|
|||
Tue Dec 30 16:16:12 2014 Ben Miller <bmiller@rackspace.com>
|
||||
|
||||
* lib/resolv.rb (Resolv::DNS::Name#==): DNS is case-insensitive, so the
|
||||
comparison should be case-insensitive as well.
|
||||
[ruby-core:66498] [Bug #10550]
|
||||
|
||||
Tue Dec 30 16:03:45 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* lib/resolv.rb (Resolv::DNS::Name): names with different dots
|
||||
|
|
|
@ -1236,8 +1236,8 @@ class Resolv
|
|||
|
||||
def ==(other) # :nodoc:
|
||||
return false unless Name === other
|
||||
return @labels.join('.') == other.to_a.join('.') &&
|
||||
@absolute == other.absolute?
|
||||
return false unless @absolute == other.absolute?
|
||||
return @labels.join('.').casecmp(other.to_a.join('.')).zero?
|
||||
end
|
||||
|
||||
alias eql? == # :nodoc:
|
||||
|
|
|
@ -183,4 +183,11 @@ class TestResolvDNS < Test::Unit::TestCase
|
|||
name2 = Resolv::DNS::Name.create("ex.ampl.eo.rg")
|
||||
assert_not_equal(name1, name2, "different dots")
|
||||
end
|
||||
|
||||
def test_case_insensitive_name
|
||||
bug10550 = '[ruby-core:66498] [Bug #10550]'
|
||||
lower = Resolv::DNS::Name.create("ruby-lang.org")
|
||||
upper = Resolv::DNS::Name.create("Ruby-Lang.org")
|
||||
assert_equal(lower, upper, bug10550)
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Reference in a new issue