summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregory Graf <graf.gregory@gmail.com>2015-05-31 11:32:38 -0500
committerGregory Graf <graf.gregory@gmail.com>2015-05-31 11:32:38 -0500
commitc118c7174a6939cbdfd35f9aaaa39c93a30cd452 (patch)
treee7f47f83c6042f72162209e5dd9776e505528696
parent8fa088ba7d20ca2e13909265bc9b00c4f64c2edf (diff)
downloadipaddress-c118c7174a6939cbdfd35f9aaaa39c93a30cd452.tar.gz
Raise ArgumentError if IP address is nil
-rw-r--r--lib/ipaddress/ipv4.rb1
-rw-r--r--lib/ipaddress/ipv6.rb1
-rw-r--r--test/ipaddress/ipv4_test.rb1
-rw-r--r--test/ipaddress/ipv6_test.rb1
4 files changed, 4 insertions, 0 deletions
diff --git a/lib/ipaddress/ipv4.rb b/lib/ipaddress/ipv4.rb
index 7d8e0d3..cbccac0 100644
--- a/lib/ipaddress/ipv4.rb
+++ b/lib/ipaddress/ipv4.rb
@@ -61,6 +61,7 @@ module IPAddress;
# IPAddress::IPv4.new "10.0.0.1/255.0.0.0"
#
def initialize(str)
+ raise ArgumentError, "Nil IP" unless str
ip, netmask = str.split("/")
# Check the ip and remove white space
diff --git a/lib/ipaddress/ipv6.rb b/lib/ipaddress/ipv6.rb
index 88098bc..76f8715 100644
--- a/lib/ipaddress/ipv6.rb
+++ b/lib/ipaddress/ipv6.rb
@@ -87,6 +87,7 @@ module IPAddress;
# ip6 = IPAddress "2001:db8::8:800:200c:417a/64"
#
def initialize(str)
+ raise ArgumentError, "Nil IP" unless str
ip, netmask = str.split("/")
if str =~ /:.+\./
diff --git a/test/ipaddress/ipv4_test.rb b/test/ipaddress/ipv4_test.rb
index 19264e2..0ce0bc9 100644
--- a/test/ipaddress/ipv4_test.rb
+++ b/test/ipaddress/ipv4_test.rb
@@ -92,6 +92,7 @@ class IPv4Test < Minitest::Test
@invalid_ipv4.each do |i|
assert_raises(ArgumentError) {@klass.new(i)}
end
+ assert_raises (ArgumentError) {@klass.new(nil)}
assert_raises (ArgumentError) {@klass.new("10.0.0.0/asd")}
end
diff --git a/test/ipaddress/ipv6_test.rb b/test/ipaddress/ipv6_test.rb
index dcfb601..78bb023 100644
--- a/test/ipaddress/ipv6_test.rb
+++ b/test/ipaddress/ipv6_test.rb
@@ -58,6 +58,7 @@ class IPv6Test < Minitest::Test
end
assert_equal 64, @ip.prefix
+ assert_raises(ArgumentError) {@klass.new nil }
assert_raises(ArgumentError) {
@klass.new "::10.1.1.1"
}