diff options
Diffstat (limited to 't/06-age.t')
-rw-r--r-- | t/06-age.t | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/t/06-age.t b/t/06-age.t new file mode 100644 index 0000000..0d47c5e --- /dev/null +++ b/t/06-age.t @@ -0,0 +1,34 @@ +# -*- mode: cperl -*- +use Test::More tests=>3; +use File::Temp 'tempdir'; + +my $basetime; + +BEGIN { +*CORE::GLOBAL::time=sub{$basetime}; +} + +use DAKKAR::Graylister; + +no warnings 'redefine'; + +my $dbdir=tempdir(CLEANUP=>1); + +local $ENV{SMTPMAILFROM}='gino'; +local $ENV{SMTPRCPTTO}='pino'; +local $ENV{TCPREMOTEIP}='10.1.2.3'; +local $ENV{DAKGL_DBNAME}="$dbdir/gray5.db"; +my ($host,$from,$to)=DAKKAR::Graylister::get_from_env(); + +$basetime=10; + +ok(!DAKKAR::Graylister::is_second_attempt($host,$from,$to),'first attempt'); +DAKKAR::Graylister::record_first_attempt($host,$from,$to); +ok(DAKKAR::Graylister::is_second_attempt($host,$from,$to),'second attempt'); + +$basetime=90000; + +DAKKAR::Graylister::remove_old_attempts(); + +ok(!DAKKAR::Graylister::is_second_attempt($host,$from,$to),'aged attempt'); + |