]> Sergey Matveev's repositories - public-inbox.git/blobdiff - t/precheck.t
use ORIGINAL_RECIPIENT once again
[public-inbox.git] / t / precheck.t
index f9d61d8ef13e19211e281a7581e53df54e0a7550..974d6a3879d2d0440a56f193f588004b41beca5a 100644 (file)
@@ -5,28 +5,26 @@ use warnings;
 use Test::More;
 use Email::Simple;
 use Email::Filter;
-use PublicInbox;
+use PublicInbox::MDA;
 
 sub do_checks {
        my ($s) = @_;
 
        my $f = Email::Filter->new(data => $s->as_string);
-       local %ENV;
-       delete $ENV{ORIGINAL_RECIPIENT};
 
-       ok(PublicInbox->precheck($f),
+       ok(PublicInbox::MDA->precheck($f, undef),
                "ORIGINAL_RECIPIENT unset is OK");
 
-       $ENV{ORIGINAL_RECIPIENT} = 'foo@example.com';
-       ok(!PublicInbox->precheck($f),
+       my $recipient = 'foo@example.com';
+       ok(!PublicInbox::MDA->precheck($f, $recipient),
                "wrong ORIGINAL_RECIPIENT rejected");
 
-       $ENV{ORIGINAL_RECIPIENT} = 'b@example.com';
-       ok(PublicInbox->precheck($f),
+       $recipient = 'b@example.com';
+       ok(PublicInbox::MDA->precheck($f, $recipient),
                "ORIGINAL_RECIPIENT in To: is OK");
 
-       $ENV{ORIGINAL_RECIPIENT} = 'c@example.com';
-       ok(PublicInbox->precheck($f),
+       $recipient = 'c@example.com';
+       ok(PublicInbox::MDA->precheck($f, $recipient),
                "ORIGINAL_RECIPIENT in Cc: is OK");
 }
 
@@ -38,7 +36,8 @@ sub do_checks {
                        Cc => 'c@example.com',
                        'Content-Type' => 'text/plain',
                        Subject => 'this is a subject',
-                       'Message-ID' => '<MID>',
+                       'Message-ID' => '<MID@host>',
+                       Date => 'Wed, 09 Apr 2014 01:28:34 +0000',
                ],
                body => "hello world\n",
        ));
@@ -52,26 +51,29 @@ sub do_checks {
                        Cc => 'John Doe <c@example.com>',
                        'Content-Type' => 'text/plain',
                        Subject => 'this is a subject',
-                       'Message-ID' => '<MID>',
+                       'Message-ID' => '<MID@host>',
+                       Date => 'Wed, 09 Apr 2014 01:28:34 +0000',
                ],
                body => "hello world\n",
        ));
 }
 
 {
-       $ENV{ORIGINAL_RECIPIENT} = 'b@example.com';
+       my $recipient = 'b@example.com';
        my $s = Email::Simple->create(
                header => [
                        To => 'b@example.com',
                        Cc => 'c@example.com',
                        'Content-Type' => 'text/plain',
                        Subject => 'this is a subject',
-                       'Message-ID' => '<MID>',
+                       'Message-ID' => '<MID@host>',
+                       Date => 'Wed, 09 Apr 2014 01:28:34 +0000',
                ],
                body => "hello world\n",
        );
        my $f = Email::Filter->new(data => $s->as_string);
-       ok(!PublicInbox->precheck($f), "missing From: is rejected");
+       ok(!PublicInbox::MDA->precheck($f, $recipient),
+               "missing From: is rejected");
 }
 
 done_testing();