File: new-nth.t

package info (click to toggle)
libnetaddr-ip-perl 4.079%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster, stretch
  • size: 1,580 kB
  • ctags: 251
  • sloc: perl: 1,417; cpp: 67; sh: 51; makefile: 9
file content (44 lines) | stat: -rw-r--r-- 697 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44

#use diagnostics;
use NetAddr::IP::Lite;

$| = 1;

sub ok() {
  print 'ok ',$test++,"\n";
}

my $ip4 = NetAddr::IP::Lite->new('1.2.3.11/29');

my @try = qw(
	0	1.2.3.9
	1	1.2.3.10
	2	1.2.3.11
	3	1.2.3.12
	4	1.2.3.13
	5	1.2.3.14
	6	undef
);

print '1..', (@try/2) +2, "\n";

$test = 1;

for (my $i=0;$i<@try;$i+=2) {
  my $rv = $ip4->nth($try[$i]);
  $rv = defined $rv
	? $rv->addr
	: 'undef';
  print "got: $rv, exp: $try[$i+1]\nnot "
	unless $rv eq $try[$i+1];
  &ok;
}

print "got: $_, exp: 1\nnot "
  unless ($_ = NetAddr::IP::Lite->new('1.2.3.4/32')->num()) && $_ == 1;
&ok;

print "got: $_, exp: 0\nnot "
  unless defined ($_ = NetAddr::IP::Lite->new('1.2.3.4/31')->num()) && $_ == 2;
&ok;