Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Add a few more tests and a 'testcover' make target

  • Loading branch information...
commit 1ea8e7985066277acceb1447e2e8c30bd2d09b0b 1 parent 45a5265
@abh abh authored
View
3  .gitignore
@@ -3,5 +3,8 @@ pm_to_blib
blib/
Makefile
Makefile.[a-z]*
+
*~
*.bak
+
+cover_db/
View
11 Makefile.PL
@@ -15,7 +15,7 @@ WriteMakefile(
'Time::HiRes' => 0,
},
ABSTRACT => 'Flexible smtpd daemon written in Perl',
- AUTHOR => 'Ask Bjorn Hansen <ask@develooper.com>',
+ AUTHOR => 'Ask Bjoern Hansen <ask@develooper.com>',
EXE_FILES => [qw(qpsmtpd qpsmtpd-forkserver qpsmtpd-prefork qpsmtpd-async)],
);
@@ -25,3 +25,12 @@ sub MY::libscan {
return $path;
}
+sub MY::postamble {
+ qq[
+testcover :
+\t cover -delete && \\
+ HARNESS_PERL_SWITCHES=-MDevel::Cover \$(MAKE) test && \\
+ cover
+]
+
+}
View
3  t/addresses.t
@@ -1,6 +1,7 @@
-use Test::More qw(no_plan);
+use Test::More tests => 23;
use strict;
use lib 't';
+
use_ok('Test::Qpsmtpd');
ok(my ($smtpd, $conn) = Test::Qpsmtpd->new_conn(), "get new connection");
View
2  t/helo.t
@@ -1,4 +1,4 @@
-use Test::More qw(no_plan);
+use Test::More tests => 12;
use strict;
use lib 't';
use_ok('Test::Qpsmtpd');
View
29 t/misc.t
@@ -0,0 +1,29 @@
+use Test::More tests => 14;
+use strict;
+use lib 't';
+use_ok('Test::Qpsmtpd');
+
+ok(my ($smtpd, $conn) = Test::Qpsmtpd->new_conn(), "get new connection");
+
+# check_spamhelo plugin
+is(($smtpd->command('HELO yahoo.com'))[0], 550, 'HELO yahoo.com');
+
+
+# fault method
+is(($smtpd->command('HELO localhost'))[0], 250, 'HELO localhost');
+is(($smtpd->fault)->[0], 451, 'fault returns 451');
+is(($smtpd->fault("test message"))->[1],
+ "Internal error - try again later - test message",
+ 'returns the input message'
+ );
+
+
+# vrfy command
+is(($smtpd->command('VRFY <foo@bar>'))[0], 252, 'VRFY command');
+
+# plugins/count_unrecognized_commands
+is(($smtpd->command('nonsense'))[0], 500, 'bad command 1');
+is(($smtpd->command('nonsense'))[0], 500, 'bad command 2');
+is(($smtpd->command('nonsense'))[0], 500, 'bad command 3');
+is(($smtpd->command('nonsense'))[0], 521, 'bad command 4');
+
View
13 t/rset.t
@@ -0,0 +1,13 @@
+use Test::More tests => 10;
+use strict;
+use lib 't';
+
+use_ok('Test::Qpsmtpd');
+
+ok(my ($smtpd, $conn) = Test::Qpsmtpd->new_conn(), "get new connection");
+is(($smtpd->command('EHLO localhost'))[0], 250, 'EHLO localhost');
+
+is(($smtpd->command('MAIL FROM:<ask@perl.org>'))[0], 250, 'MAIL FROM:<ask@perl.org>');
+is($smtpd->transaction->sender->address, 'ask@perl.org', 'got the right sender');
+is(($smtpd->command('RSET'))[0], 250, 'RSET');
+is($smtpd->transaction->sender, undef, 'No sender stored after rset');
Please sign in to comment.
Something went wrong with that request. Please try again.