use Test::More; # $Id: short.t,v 1.1.1.1 2006/08/14 15:36:06 lem Exp $ my %cases = qw( 127.1 127.0.0.1 127.0.1.1 127.0.1.1 127.1.0.1 127.1.0.1 DEAD:BEEF::1 dead:beef::1 ::1 0:0::1 2001:620:600::1 2001:620:600::1 2001:620:600:0:1::1 2001:620:600:0:1::1 2001:620:601:0:1::1 2001:620:601::1:0:0:1 0:0:33:44::CC:DD 0:0:33:44:0:0:CC:DD 0:0:33:44::DD 0:0:33:44:0:0:0:DD 0:0:33:44:AA:: 0:0:33:44:AA:0:0:0 0:0:33::BB:0:0 0:0:33:0:0:BB:0:0 0:22:33:44:0:BB:CC:0 0:22:33:44:0:BB:CC:0 0:22:33:44:0:BB:CC:DD 0:22:33:44:0:BB:CC:DD 0:22:33:44:AA:BB:CC:0 0:22:33:44:AA:BB:CC:0 0:22:33:44:AA:BB:CC:DD 0:22:33:44:AA:BB:CC:DD 110:0:0:44:AA:: 110:0:0:44:AA:0:0:0 11:0:33:44:0:BB:CC:DD 11:0:33:44:0:BB:CC:DD 11:0:33:44:AA:BB:CC:DD 11:0:33:44:AA:BB:CC:DD 11:22:0:44:AA::DD 11:22:0:44:AA:0:0:DD 11:22:33:0:AA:BB:CC:0 11:22:33:0:AA:BB:CC:0 11:22:33:44:AA:: 11:22:33:44:AA:0:0:0 11:22::CC:DD 11:22:0:0:0:0:CC:DD 11::44:AA:0:0:DD 11:0:0:44:AA:0:0:DD 11::44:AA:BB:0:0 11:0:0:44:AA:BB:0:0 11::AA:0:0:DD 11:0:0:0:AA:0:0:DD 11::AA:BB:0:0 11:0:0:0:AA:BB:0:0 1:: 1:0:0:0:0:0:0:0 :: 0:0:0:0:0:0:0:0 ::33:44:AA:BB:0:0 0:0:33:44:AA:BB:0:0 ::44:0:0:CC:DD 0:0:0:44:0:0:CC:DD ::44:AA:BB:0:0 0:0:0:44:AA:BB:0:0 ::44:AA:BB:CC:DD 0:0:0:44:AA:BB:CC:DD ::A 0:0:0:0:0:0:0:A ); my $tests = 2 * keys %cases; plan tests => 1 + $tests; SKIP: { use_ok('NetAddr::IP') or skip "Failed to load NetAddr::IP", $tests; for my $c (sort keys %cases) { my $ip = new NetAddr::IP $cases{$c}; isa_ok($ip, 'NetAddr::IP', "$cases{$c}"); my $short = uc $ip->short; unless (is($short, $c, "short($cases{$c}) returns $short")) { diag "ip=$ip"; } } }