]> Sergey Matveev's repositories - public-inbox.git/blobdiff - t/precheck.t
update copyright headers and email addresses
[public-inbox.git] / t / precheck.t
index f9d61d8ef13e19211e281a7581e53df54e0a7550..3f2c5d5b76230dab8bee16128da41ddc607d9cab 100644 (file)
@@ -1,33 +1,32 @@
-# Copyright (C) 2014, Eric Wong <normalperson@yhbt.net> and all contributors
+# Copyright (C) 2014-2015 all contributors <meta@public-inbox.org>
 # License: AGPLv3 or later (https://www.gnu.org/licenses/agpl-3.0.txt)
 use strict;
 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),
-               "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");
+
+       $recipient = [ 'c@example.com', 'd@example.com' ];
+       ok(PublicInbox::MDA->precheck($f, $recipient),
+               "alias list is OK");
 }
 
 {
@@ -38,7 +37,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 +52,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();