-
Notifications
You must be signed in to change notification settings - Fork 70
/
wlbl_uri.t
executable file
·109 lines (89 loc) · 3.12 KB
/
wlbl_uri.t
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#!/usr/bin/perl -T
use lib '.'; use lib 't';
use SATest; sa_t_init("wlbl_uri");
use Test::More tests => 12;
# copied from 60_welcome.cf
# should do the right thing with the different disable/enable compat settings
my $myrules = <<'END';
if can(Mail::SpamAssassin::Conf::feature_welcomelist_blocklist)
body URI_HOST_IN_BLOCKLIST eval:check_uri_host_in_blocklist()
tflags URI_HOST_IN_BLOCKLIST userconf noautolearn
score URI_HOST_IN_BLOCKLIST 100
if !can(Mail::SpamAssassin::Conf::compat_welcomelist_blocklist)
meta URI_HOST_IN_BLACKLIST (URI_HOST_IN_BLOCKLIST)
tflags URI_HOST_IN_BLACKLIST userconf noautolearn
score URI_HOST_IN_BLACKLIST 100
score URI_HOST_IN_BLOCKLIST 0.01
endif
endif
if !can(Mail::SpamAssassin::Conf::feature_welcomelist_blocklist)
if (version >= 3.004000)
body URI_HOST_IN_BLOCKLIST eval:check_uri_host_in_blacklist()
tflags URI_HOST_IN_BLOCKLIST userconf noautolearn
score URI_HOST_IN_BLOCKLIST 0.01
meta URI_HOST_IN_BLACKLIST (URI_HOST_IN_BLOCKLIST)
tflags URI_HOST_IN_BLACKLIST userconf noautolearn
score URI_HOST_IN_BLACKLIST 100
endif
endif
if can(Mail::SpamAssassin::Conf::feature_welcomelist_blocklist)
body URI_HOST_IN_WELCOMELIST eval:check_uri_host_in_welcomelist()
tflags URI_HOST_IN_WELCOMELIST userconf nice noautolearn
score URI_HOST_IN_WELCOMELIST -100
if !can(Mail::SpamAssassin::Conf::compat_welcomelist_blocklist)
meta URI_HOST_IN_WHITELIST (URI_HOST_IN_WELCOMELIST)
tflags URI_HOST_IN_WHITELIST userconf nice noautolearn
score URI_HOST_IN_WHITELIST -100
score URI_HOST_IN_WELCOMELIST -0.01
endif
endif
if !can(Mail::SpamAssassin::Conf::feature_welcomelist_blocklist)
if (version >= 3.004000)
body URI_HOST_IN_WELCOMELIST eval:check_uri_host_in_whitelist()
tflags URI_HOST_IN_WELCOMELIST userconf nice noautolearn
score URI_HOST_IN_WELCOMELIST -0.01
meta URI_HOST_IN_WHITELIST (URI_HOST_IN_WELCOMELIST)
tflags URI_HOST_IN_WHITELIST userconf nice noautolearn
score URI_HOST_IN_WHITELIST -100
endif
endif
END
disable_compat "welcomelist_blocklist";
%patterns = (
q{ 0.0 URI_HOST_IN_BLOCKLIST }, 'hit-blo',
q{ 100 URI_HOST_IN_BLACKLIST }, 'hit-bla',
q{ -0.0 URI_HOST_IN_WELCOMELIST }, 'hit-wel',
q{ -100 URI_HOST_IN_WHITELIST }, 'hit-whi',
);
###
tstprefs($myrules . "
blocklist_uri_host ximian.com
welcomelist_uri_host helixcode.com
");
sarun ("-L -t < data/nice/001", \&patterns_run_cb);
ok_all_patterns();
###
tstprefs($myrules . "
blacklist_uri_host ximian.com
whitelist_uri_host helixcode.com
");
sarun ("-L -t < data/nice/001", \&patterns_run_cb);
ok_all_patterns();
###
%patterns = (
q{ 100 URI_HOST_IN_BLOCKLIST }, 'hit-blo',
q{ -100 URI_HOST_IN_WELCOMELIST }, 'hit-wel',
);
%anti_patterns = (
q{ URI_HOST_IN_BLACKLIST }, 'hit-bla',
q{ URI_HOST_IN_WHITELIST }, 'hit-whi',
);
tstpre("
enable_compat welcomelist_blocklist
");
tstprefs($myrules . "
blocklist_uri_host ximian.com
welcomelist_uri_host helixcode.com
");
sarun ("-L -t < data/nice/001", \&patterns_run_cb);
ok_all_patterns();