Newer
Older
NetAddr-IP / Lite / t / firstlast.t
@Michael Robinton Michael Robinton on 21 Oct 2014 1 KB Import of MIKER/NetAddr-IP-4.042 from CPAN.
  1.  
  2. #use diagnostics;
  3. use NetAddr::IP::Lite;
  4.  
  5. $| = 1;
  6.  
  7. print "1..8\n";
  8.  
  9. my $test = 1;
  10. sub ok() {
  11. print 'ok ',$test++,"\n";
  12. }
  13.  
  14. my $ip4 = NetAddr::IP::Lite->new('1.2.3.11/29');
  15. my $ip6 = NetAddr::IP::Lite->new('FF::8B/125');
  16.  
  17. my $exp = '1.2.3.9';
  18. my $rv = $ip4->first->addr;
  19. print "got: $rv, exp: $exp\nnot "
  20. unless $rv eq $exp;
  21. &ok;
  22.  
  23. $exp = '1.2.3.14';
  24. $rv = $ip4->last->addr;
  25. print "got: $rv, exp: $exp\nnot "
  26. unless $rv eq $exp;
  27. &ok;
  28.  
  29. $exp = 'FF:0:0:0:0:0:0:89';
  30. $rv = $ip6->first->addr;
  31. print "got: $rv, exp: $exp\nnot "
  32. unless $rv eq $exp;
  33. &ok;
  34.  
  35. $exp = 'FF:0:0:0:0:0:0:8E';
  36. $rv = $ip6->last->addr;
  37. print "got: $rv, exp: $exp\nnot "
  38. unless $rv eq $exp;
  39. &ok;
  40.  
  41. $ip4 = NetAddr::IP::Lite->new('1.2.3.11/31');
  42. $ip6 = NetAddr::IP::Lite->new('FF::8B/127');
  43.  
  44. $exp = '1.2.3.10';
  45. $rv = $ip4->first->addr;
  46. print "got: $rv, exp: $exp\nnot "
  47. unless $rv eq $exp;
  48. &ok;
  49.  
  50. $exp = '1.2.3.11';
  51. $rv = $ip4->last->addr;
  52. print "got: $rv, exp: $exp\nnot "
  53. unless $rv eq $exp;
  54. &ok;
  55.  
  56. $exp = 'FF:0:0:0:0:0:0:8A';
  57. $rv = $ip6->first->addr;
  58. print "got: $rv, exp: $exp\nnot "
  59. unless $rv eq $exp;
  60. &ok;
  61.  
  62. $exp = 'FF:0:0:0:0:0:0:8B';
  63. $rv = $ip6->last->addr;
  64. print "got: $rv, exp: $exp\nnot "
  65. unless $rv eq $exp;
  66. &ok;