]> Sergey Matveev's repositories - public-inbox.git/blobdiff - t/lei-q-kw.t
No ext_urls
[public-inbox.git] / t / lei-q-kw.t
index c00a0a43f8e8aa2eaa95986c3fa7e85966d692dc..4edee72a54b733a6237261a98b6c86b352939843 100644 (file)
@@ -14,7 +14,6 @@ my $exp = {
        '<testmessage@example.com>' => eml_load('t/utf8.eml'),
 };
 $exp->{'<qp@example.com>'}->header_set('Status', 'RO');
-$exp->{'<testmessage@example.com>'}->header_set('Status', 'O');
 
 test_lei(sub {
 lei_ok(qw(import -F eml t/plack-qp.eml));
@@ -29,7 +28,8 @@ ok(!glob("$o/cur/*"), 'last result cleared after augment-import');
 
 lei_ok(qw(q -o), "maildir:$o", qw(m:qp@example.com));
 @fn = glob("$o/cur/*:2,S");
-is(scalar(@fn), 1, "`seen' flag set on Maildir file");
+is(scalar(@fn), 1, "`seen' flag set on Maildir file") or
+       diag "$o contents: ", explain([glob("$o/*/*")]);
 
 # ensure --no-import-before works
 my $n = $fn[0];
@@ -49,6 +49,7 @@ SKIP: {
        my $cat = popen_rd(['cat', $o]);
        ok(!lei(qw(q --import-before bogus -o), "mboxrd:$o"),
                '--import-before fails on non-seekable output');
+       like($lei_err, qr/not seekable/, 'unseekable noted in error');
        is(do { local $/; <$cat> }, '', 'no output on FIFO');
        close $cat;
        $cat = popen_rd(['cat', $o]);
@@ -105,9 +106,19 @@ for my $sfx ('', '.gz') {
        my %res;
        PublicInbox::MboxReader->mboxrd($fh, sub {
                my ($eml) = @_;
-               $res{$eml->header_raw('Message-ID')} = $eml;
+               my $mid = $eml->header_raw('Message-ID');
+               if ($mid eq '<testmessage@example.com>') {
+                       is_deeply([$eml->header('Status')], [],
+                               "no status $sfx");
+                       $eml->header_set('Status');
+               } elsif ($mid eq '<qp@example.com>') {
+                       is($eml->header('Status'), 'RO', 'status preserved');
+               } else {
+                       fail("unknown mid $mid");
+               }
+               $res{$mid} = $eml;
        });
-       is_deeply(\%res, $exp, '--augment worked');
+       is_deeply(\%res, $exp, '--augment worked') or diag $lei_err;
 
        lei_ok(qw(q -o), "mboxrd:/dev/stdout", qw(m:qp@example.com)) or
                diag $lei_err;