spamd-apache2/t/30run.t (36 lines of code) (raw):

#!/usr/bin/perl use strict; # assume we are run from a subdirectory of the top-level SpamAssassin # build dir use lib '../lib'; use lib '../../lib'; use Apache::Test qw(:withtestmore); use Test::More; use Apache::TestUtil; use Mail::SpamAssassin::Client; plan tests => 7, need_apache 2, need_module 'perl'; ok 1, 'loaded'; # This doesn't support IPv6, obviously. It doesn't only look weird, # it *is* weird. Apache::Test could use some improvements. my $hostport = Apache::TestRequest::hostport(Apache::Test::config()); my ($host, $port) = split /:/, $hostport; my $client = Mail::SpamAssassin::Client->new( { port => $port, host => $host, username => 'someuser', } ) or BAIL_OUT('Mail::SpamAssassin::Client->new failed'); ok 2, 'started M::SA::Client'; SKIP: { eval 'use Mail::SpamAssassin 3.001004 ()'; skip 'M::SA::C->ping is broken before v3.1.4', 1 if $@; ok $client->ping, 'ping'; } my $gtube = "foo: bar\n\n" . 'XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X' . "\n"; my $result; $result = $client->process($gtube); ok($result, 'processed GTUBE message'); ok($result->{isspam}, 'GTUBE identified as spam by PROCESS'); $result = $client->check($gtube); ok($result, 'checked GTUBE message'); ok($result->{isspam}, 'GTUBE identified as spam by CHECK'); # vim: ts=4 sw=4 noet