/[suikacvs]/messaging/manakai/t/util-hostpermit.t
Suika

Diff of /messaging/manakai/t/util-hostpermit.t

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by wakaba, Wed Sep 17 02:34:18 2003 UTC revision 1.3 by wakaba, Fri Oct 31 08:39:27 2003 UTC
# Line 1  Line 1 
1  use strict;  use strict;
2  require Test::Simple;  require Test::Simple;
3    no warnings 'deprecated'; # v-string is deprecated
4  require Message::Util::HostPermit;  require Message::Util::HostPermit;
5  sub ok ($;$);  sub ok ($;$);
6  sub new_checker () {  sub new_checker () {
# Line 36  my @test = ( Line 36  my @test = (
36              sub {              sub {
37                my $checker = new_checker;                my $checker = new_checker;
38                ok $checker->match_ipv4 ('1.1.1.1', '1.1.1.1');                ok $checker->match_ipv4 ('1.1.1.1', '1.1.1.1');
39                ok $checker->match_ipv4 ('1.1.1.1', v1.1.1.1);                ok $checker->match_ipv4 ('1.1.1.1', 1.1.1.1);
40                ok $checker->match_ipv4 (v1.1.1.1, v1.1.1.1);                ok $checker->match_ipv4 (1.1.1.1, 1.1.1.1);
41                                
42                ok $checker->match_ipv4 ('1.1.1.1/3', '1.1.1.1');                ok $checker->match_ipv4 ('1.1.1.1/29', '1.1.1.1');
43                ok !$checker->match_ipv4 ('1.1.1.1/3', '1.1.1.45');                ok !$checker->match_ipv4 ('1.1.1.1/29', '1.1.1.45');
44                ok $checker->match_ipv4 ('1.1.1.1/3', '1.1.1.0');                ok $checker->match_ipv4 ('1.1.1.1/29', '1.1.1.0');
45                ok $checker->match_ipv4 ('1.1.1.1/3', '1.1.1.7');                ok $checker->match_ipv4 ('1.1.1.1/29', '1.1.1.7');
46                ok !$checker->match_ipv4 ('1.1.1.1/3', '1.1.1.8');                ok !$checker->match_ipv4 ('1.1.1.1/29', '1.1.1.8');
47                ok !$checker->match_ipv4 ('1.1.1.1/3', '1.1.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/29', '1.1.32.0');
48                ok !$checker->match_ipv4 ('1.1.1.1/3', '1.43.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/29', '1.43.32.0');
49                ok !$checker->match_ipv4 ('1.1.1.1/3', '41.153.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/29', '41.153.32.0');
50                ok $checker->match_ipv4 ('1.1.1.1/8', '1.1.1.1');                ok $checker->match_ipv4 ('1.1.1.1/24', '1.1.1.1');
51                ok $checker->match_ipv4 ('1.1.1.1/8', '1.1.1.45');                ok $checker->match_ipv4 ('1.1.1.1/24', '1.1.1.45');
52                ok $checker->match_ipv4 ('1.1.1.1/8', '1.1.1.0');                ok $checker->match_ipv4 ('1.1.1.1/24', '1.1.1.0');
53                ok !$checker->match_ipv4 ('1.1.1.1/8', '1.1.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/24', '1.1.32.0');
54                ok !$checker->match_ipv4 ('1.1.1.1/8', '1.43.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/24', '1.43.32.0');
55                ok !$checker->match_ipv4 ('1.1.1.1/8', '41.153.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/24', '41.153.32.0');
56                ok $checker->match_ipv4 ('1.1.1.1/13', '1.1.1.1');                ok $checker->match_ipv4 ('1.1.1.1/19', '1.1.1.1');
57                ok $checker->match_ipv4 ('1.1.1.1/13', '1.1.1.45');                ok $checker->match_ipv4 ('1.1.1.1/19', '1.1.1.45');
58                ok $checker->match_ipv4 ('1.1.1.1/13', '1.1.1.0');                ok $checker->match_ipv4 ('1.1.1.1/19', '1.1.1.0');
59                ok $checker->match_ipv4 ('1.1.1.1/13', '1.1.13.0');                ok $checker->match_ipv4 ('1.1.1.1/19', '1.1.13.0');
60                ok $checker->match_ipv4 ('1.1.1.1/13', '1.1.21.0');                ok $checker->match_ipv4 ('1.1.1.1/19', '1.1.21.0');
61                ok $checker->match_ipv4 ('1.1.1.1/13', '1.1.31.0');                ok $checker->match_ipv4 ('1.1.1.1/19', '1.1.31.0');
62                ok !$checker->match_ipv4 ('1.1.1.1/13', '1.1.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/19', '1.1.32.0');
63                ok !$checker->match_ipv4 ('1.1.1.1/13', '1.43.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/19', '1.43.32.0');
64                ok !$checker->match_ipv4 ('1.1.1.1/13', '41.153.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/19', '41.153.32.0');
65                ok $checker->match_ipv4 ('1.1.1.1/16', '1.1.1.1');                ok $checker->match_ipv4 ('1.1.1.1/16', '1.1.1.1');
66                ok $checker->match_ipv4 ('1.1.1.1/16', '1.1.1.45');                ok $checker->match_ipv4 ('1.1.1.1/16', '1.1.1.45');
67                ok $checker->match_ipv4 ('1.1.1.1/16', '1.1.32.0');                ok $checker->match_ipv4 ('1.1.1.1/16', '1.1.32.0');
68                ok !$checker->match_ipv4 ('1.1.1.1/16', '1.43.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/16', '1.43.32.0');
69                ok !$checker->match_ipv4 ('1.1.1.1/16', '41.153.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/16', '41.153.32.0');
70                ok $checker->match_ipv4 ('1.1.1.1/24', '1.1.1.1');                ok $checker->match_ipv4 ('1.1.1.1/8', '1.1.1.1');
71                ok $checker->match_ipv4 ('1.1.1.1/24', '1.1.1.45');                ok $checker->match_ipv4 ('1.1.1.1/8', '1.1.1.45');
72                ok $checker->match_ipv4 ('1.1.1.1/24', '1.1.32.0');                ok $checker->match_ipv4 ('1.1.1.1/8', '1.1.32.0');
73                ok $checker->match_ipv4 ('1.1.1.1/24', '1.153.32.0');                ok $checker->match_ipv4 ('1.1.1.1/8', '1.153.32.0');
74                ok !$checker->match_ipv4 ('1.1.1.1/24', '41.153.32.0');                ok !$checker->match_ipv4 ('1.1.1.1/8', '41.153.32.0');
75                ok $checker->match_ipv4 ('1.1.1.1/32', '1.1.1.1');                ok $checker->match_ipv4 ('1.1.1.1/0', '1.1.1.1');
76                ok $checker->match_ipv4 ('1.1.1.1/32', '1.1.1.0');                ok $checker->match_ipv4 ('1.1.1.1/0', '1.1.1.0');
77                ok $checker->match_ipv4 ('1.1.1.1/32', '123.43.56.23');                ok $checker->match_ipv4 ('1.1.1.1/0', '123.43.56.23');
78                                
79                ok !$checker->match_ipv4 (v1.1.1.1, v1.1.1455.1), 'invalid addr';                ok do {$checker->match_ipv4 (1.1.1.1, 1.1.1455.1); 1}, 'invalid addr';
80                ok !$checker->match_ipv4 (v1.1.1.1, '1.1.1455.1'), 'invalid addr';                ok do {$checker->match_ipv4 (1.1.1.1, '1.1.1455.1'); 1}, 'invalid addr';
81                ok $checker->match_ipv4 (v1.1.1455.1, v1.1.1.1), 'invalid pattern';                ok do {$checker->match_ipv4 (1.1.1455.1, v1.1.1.1); 1}, 'invalid pattern';
82                ok $checker->match_ipv4 ('1.1.1455.1', v1.1.1.1), 'invalid pattern';                ok do {$checker->match_ipv4 ('1.1.1455.1', v1.1.1.1); 1}, 'invalid pattern';
83                ok !$checker->match_ipv4 ('123', '44.44.3.2'), 'invalid pattern';                ok do {$checker->match_ipv4 ('123', '44.44.3.2'); 1}, 'invalid pattern';
84                ok !$checker->match_ipv4 ('*.12.3.1', '5.4.3.2'), 'invalid pattern';                ok do {$checker->match_ipv4 ('*.12.3.1', '5.4.3.2'); 1}, 'invalid pattern';
85                ok !$checker->match_ipv4 ('12.3/32', '5.4.3.2'), 'invalid pattern';                ok do {$checker->match_ipv4 ('12.3/32', '5.4.3.2'); 1}, 'invalid pattern';
86                ok $checker->match_ipv4 (v1.1.1.1, '12.3.3'), 'invalid addr';                ok do {$checker->match_ipv4 (v1.1.1.1, '12.3.3'); 1}, 'invalid addr';
87                ok $checker->match_ipv4 (v1.1.1.1, '1.1.1.1/31'), 'invalid addr';                ok do {$checker->match_ipv4 ('1.1.1.1/39', '1.1.1.0'); 1}, 'invalid pattern';
               ok $checker->match_ipv4 ('1.1.1.1/39', '1.1.1.0'), 'invalid pattern';  
88                                
89              },2..49,              },2..49,
90              sub {              sub {
# Line 98  my @test = ( Line 97  my @test = (
97  Deny host=example.org  Deny host=example.org
98  Allow host=example.net  Allow host=example.net
99  Allow ipv4=12.34.5.6  Allow ipv4=12.34.5.6
100    Allow host=www.example.com port=80
101  Deny host=*  Deny host=*
102  Deny ipv4=0.0.0.0/32  Deny ipv4=0.0.0.0/0
103  Deny ipv6=0::0/128");  Deny ipv6=0::0/0");
104                ok $checker->check ('example.com');                ok $checker->check ('example.com');
105                ok !$checker->check ('example.org');                ok !$checker->check ('example.org');
106                ok $checker->check ('example.net');                ok $checker->check ('example.net');
# Line 114  Deny ipv6=0::0/128"); Line 114  Deny ipv6=0::0/128");
114                ok !$checker->check ('0::2');                ok !$checker->check ('0::2');
115                                
116                ok $checker->check ('example.com', 80);                ok $checker->check ('example.com', 80);
117                  ok $checker->check ('example.net', 80);
118                ok !$checker->check ('example.org', 80);                ok !$checker->check ('example.org', 80);
119              },2,3,4,5,6,7,8,9,10,11,12,                ok $checker->check ('www.example.com', 80);
120                  ok !$checker->check ('www.example.com', 8080);
121                },2..15,
122             );             );
123    
124  Test::Simple->import (tests => scalar @test);  Test::Simple->import (tests => scalar @test);

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.3

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24