Skip to content

Commit 96b3ecd

Browse files
committed
Fix InvalidAddressError message
1 parent 036836d commit 96b3ecd

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

lib/ipaddr.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -693,8 +693,8 @@ def in_addr(addr)
693693
octets = addr.split('.')
694694
end
695695
octets.inject(0) { |i, s|
696-
(n = s.to_i) < 256 or raise InvalidAddressError, "invalid address: #{@addr}"
697-
(s != '0') && s.start_with?('0') and raise InvalidAddressError, "zero-filled number in IPv4 address is ambiguous: #{@addr}"
696+
(n = s.to_i) < 256 or raise InvalidAddressError, "invalid address: #{addr}"
697+
(s != '0') && s.start_with?('0') and raise InvalidAddressError, "zero-filled number in IPv4 address is ambiguous: #{addr}"
698698
i << 8 | n
699699
}
700700
end

test/test_ipaddr.rb

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -557,4 +557,16 @@ def test_hash
557557
assert_equal(true, s.include?(a5))
558558
assert_equal(true, s.include?(a6))
559559
end
560+
561+
def test_raises_invalid_address_error_with_error_message
562+
e = assert_raise(IPAddr::InvalidAddressError) do
563+
IPAddr.new('192.168.0.1000')
564+
end
565+
assert_equal('invalid address: 192.168.0.1000', e.message)
566+
567+
e = assert_raise(IPAddr::InvalidAddressError) do
568+
IPAddr.new('192.168.01.100')
569+
end
570+
assert_equal('zero-filled number in IPv4 address is ambiguous: 192.168.01.100', e.message)
571+
end
560572
end

0 commit comments

Comments
 (0)