A real test (and a flaw in the harness fixed)

git-svn-id: https://svn.perl.org/qpsmtpd/trunk@314 958fd67b-6ff1-0310-b445-bb7760255be9
This commit is contained in:
Matt Sergeant 2004-09-08 21:48:27 +00:00
parent 9224e436bb
commit d811d6dbdd
3 changed files with 28 additions and 2 deletions

View File

@ -103,7 +103,7 @@ sub run_plugin_tests {
# Now run them # Now run them
foreach my $plugin (@plugins) { foreach my $plugin (@plugins) {
$plugin->run_tests(); $plugin->run_tests($self);
} }
} }

View File

@ -30,10 +30,11 @@ sub total_tests {
} }
sub run_tests { sub run_tests {
my ($plugin) = @_; my ($plugin, $qp) = @_;
foreach my $t (@{$plugin->{_tests}}) { foreach my $t (@{$plugin->{_tests}}) {
my $method = $t->{name}; my $method = $t->{name};
diag "Running $method tests for plugin " . $plugin->plugin_name; diag "Running $method tests for plugin " . $plugin->plugin_name;
local $plugin->{_qp} = $qp;
$plugin->$method(); $plugin->$method();
} }
} }

25
t/plugin_tests/dnsbl Normal file
View File

@ -0,0 +1,25 @@
sub register_tests {
my $self = shift;
$self->register_test("test_local", 1);
$self->register_test("test_returnval", 1);
}
sub test_local {
my $self = shift;
my $connection = $self->qp->connection;
$connection->remote_ip('127.0.0.2'); # standard dnsbl test value
$self->connect_handler($self->qp->transaction);
ok($self->qp->connection->notes('dnsbl_sockets'));
}
sub test_returnval {
my $self = shift;
my ($ret, $note) = $self->rcpt_handler($self->qp->transaction, 'rcpt@example.com');
is($ret, DENY, "Check we got a DENY");
diag("dnsbl result: $note");
}