FilesSubmittedBranchesLabelsClientsUsersJobsHelp
Tree viewShow file textShow revision historyShow/hide recent activityInformation
//depot/projects/greylistd/t/01-basic.t#2

//depot/projects/greylistd/t/01-basic.t#2 – edit change 110 (text) ·revision history

1#!/usr/bin/perl -w
2use strict;
3use Test::More tests => 7;
4use File::Temp qw(tempdir);
5
6use_ok('Mail::Greylist');
7
8my $dir = tempdir(CLEANUP => 1);
9my $gl = Mail::Greylist->new(dbfile => "$dir/t.db", delay => 2);
10isa_ok($gl, 'Mail::Greylist');
11
12my %req = (client_address => '10.1.2.3',
13 sender => 'someone@example.com',
14 recipient => 'nullbyte@ttul.org');
15
16like($gl->check(%req), qr/^DEFER/, 'first attempt is deferred');
17like($gl->check(%req), qr/^DEFER/, 'immediate retry still deferred');
18sleep 3;
19is($gl->check(%req), 'DUNNO', 'retry after delay is accepted');
20
21# same /24 counts as the same sender (job000004)
22$req{client_address} = '10.1.2.99';
23is($gl->check(%req), 'DUNNO', 'same /24 is accepted');
24
25my $gl2 = Mail::Greylist->new(dbfile => "$dir/t2.db",
26 whitelist => [ qr/^192\.168\./ ]);
27is($gl2->check(%req, client_address => '192.168.0.5'), 'DUNNO',
28 'whitelisted network skips the greylist');

P4Web/LINUX26X86/2005.1/82295 · Copyright © 1995-2005 Perforce Software · ttul.org