#!/usr/bin/perl -T use lib '.'; use lib 't'; use SATest; sa_t_init("welcomelist_from"); use Test::More; plan skip_all => 'Long running tests disabled' unless conf_bool('run_long_tests'); plan tests => 32; # --------------------------------------------------------------------------- tstpre (" loadplugin Mail::SpamAssassin::Plugin::AWL "); tstprefs (" header USER_IN_WELCOMELIST eval:check_from_in_welcomelist() tflags USER_IN_WELCOMELIST userconf nice noautolearn score USER_IN_WELCOMELIST -100 header USER_IN_DEF_WELCOMELIST eval:check_from_in_default_welcomelist() tflags USER_IN_DEF_WELCOMELIST userconf nice noautolearn score USER_IN_DEF_WELCOMELIST -15 def_welcomelist_from_rcvd *\@paypal.com paypal.com def_welcomelist_from_rcvd *\@paypal.com ebay.com def_welcomelist_from_rcvd mumble\@example.com example.com welcomelist_from_rcvd foo\@example.com spamassassin.org welcomelist_from_rcvd foo\@example.com example.com welcomelist_from_rcvd bar\@example.com example.com welcomelist_allows_relays bar\@example.com welcomelist_from baz\@example.com welcomelist_from bam\@example.com unwelcomelist_from bam\@example.com unwelcomelist_from_rcvd mumble\@example.com "); # tests 1 - 4 does welcomelist_from work? %patterns = ( q{ -100 USER_IN_WELCOMELIST }, '', ); %anti_patterns = ( q{ FORGED_IN_WELCOMELIST }, '', q{ USER_IN_DEF_WELCOMELIST }, '', q{ FORGED_IN_DEF_WELCOMELIST }, '', ); sarun ("-L -t < data/nice/008", \&patterns_run_cb); ok_all_patterns(); # tests 5 - 8 does welcomelist_from_rcvd work? sarun ("-L -t < data/nice/009", \&patterns_run_cb); ok_all_patterns(); # tests 9 - 12 second relay specified for same addr in welcomelist_from_rcvd sarun ("-L -t < data/nice/010", \&patterns_run_cb); ok_all_patterns(); %patterns = ( q{ -15 USER_IN_DEF_WELCOMELIST }, '', ); %anti_patterns = ( q{ USER_IN_WELCOMELIST }, '', q{ FORGED_IN_WELCOMELIST }, '', q{ FORGED_IN_DEF_WELCOMELIST }, '', ); # tests 13 - 16 does def_welcomelist_from_rcvd work? sarun ("-L -t < data/nice/011", \&patterns_run_cb); ok_all_patterns(); # tests 17 - 20 second relay specified for same addr in def_welcomelist_from_rcvd sarun ("-L -t < data/nice/012", \&patterns_run_cb); ok_all_patterns(); %patterns = (); %anti_patterns = ( q{ USER_IN_WELCOMELIST }, '', q{ FORGED_IN_WELCOMELIST }, '', q{ USER_IN_DEF_WELCOMELIST }, '', q{ FORGED_IN_DEF_WELCOMELIST }, '', ); # tests 21 - 24 does welcomelist_allows_relays suppress the forged rule without # putting the address on the welcomelist? sarun ("-L -t < data/nice/013", \&patterns_run_cb); ok_all_patterns(); # tests 25 - 28 does unwelcomelist_from work? sarun ("-L -t < data/nice/014", \&patterns_run_cb); ok_all_patterns(); # tests 29 - 32 does unwelcomelist_from_rcvd work? sarun ("-L -t < data/nice/015", \&patterns_run_cb); ok_all_patterns();