--- trunk/t/1_nos.t 2005/08/24 22:11:00 76 +++ trunk/t/1_nos.t 2005/08/25 00:37:48 77 @@ -3,8 +3,9 @@ use strict; use blib; -use Test::More tests => 100; +use Test::More tests => 114; use Cwd qw/abs_path/; +use Data::Dumper; BEGIN { use_ok('Nos'); @@ -89,7 +90,7 @@ sleep => 0, ), 'send_queued_messages for My list'); -cmp_ok( scalar(Email::Send::Test->emails), '==', $sent, "sent $sent emails" ); +cmp_ok( eval { scalar(Email::Send::Test->emails) }, '==', $sent, "sent $sent emails" ); # replay to messages @@ -113,12 +114,24 @@ } -# test received +sub test_received { + my $arg = {@_}; -ok(my @r = $nos->received_messages( email => 'foo@example.com' ), 'received from foo@example.com'); -cmp_ok( scalar @r, '==', $sent, "received $sent messages"); + #diag "where ",Dumper($arg->{'where'}); + my $num = $arg->{'num'}; -ok($nos->received_messages( list => 'My list' ), 'received to My list'); + ok(my @r = $nos->received_messages( %{$arg->{'where'}} ), 'received filter'); + cmp_ok( scalar @r, '==', $num, "received $num messages"); + + #diag "received_messages = ",Dumper(\@r); + +} + +test_received(num => $sent); +test_received(where => { list => 'My list' }, num => $sent); +foreach my $email (qw(foo bar baz)) { + test_received(where => { email => $email . '@example.com' }, num => 1); +} # do some changes @@ -133,6 +146,9 @@ cmp_ok(scalar $nos->list_members( list => 'My list' ), '==', 1, 'members of My list'); cmp_ok(scalar $nos->list_members( list => 'another' ), '==', 0, 'members of another'); +ok($nos->delete_member( email => 'bar@example.com' ), "delete"); +cmp_ok(scalar $nos->list_members( list => 'My list' ), '==', 0, 'members of My list'); + # now test delete ok($nos->create_list( list => 'delete', email => 'delete@example.com', aliases => $aliases), "create_list error");