]> Sergey Matveev's repositories - public-inbox.git/blobdiff - t/v2writable.t
import: rewrite less history during purge
[public-inbox.git] / t / v2writable.t
index 1e8e40426138bc286bdd7a48f7fe089013d69d79..e49c06b98c0efde79faf596f22891bddc0cdc084 100644 (file)
@@ -105,6 +105,7 @@ if ('ensure git configs are correct') {
 
 {
        $mime->header_set('Message-Id', '<abcde@1>', '<abcde@2>');
+       $mime->header_set('References', '<zz-mid@b>');
        ok($im->add($mime), 'message with multiple Message-ID');
        $im->done;
        my @found;
@@ -189,6 +190,22 @@ EOF
                is($nn{$mid}++, 0, "MID is unique in NEWNEWS");
        }
        is_deeply([sort keys %nn], [sort keys %uniq]);
+
+       my %lg;
+       foreach my $num (@{$n->listgroup($group)}) {
+               is($lg{$num}++, 0, "num is unique in LISTGROUP");
+       }
+       is_deeply([sort keys %lg], [sort keys %$x],
+               'XOVER and LISTGROUPS return the same article numbers');
+
+       my $xref = $n->xhdr('Xref', '1-');
+       is_deeply([sort keys %lg], [sort keys %$xref], 'Xref range OK');
+
+       my $mids = $n->xhdr('Message-ID', '1-');
+       is_deeply([sort keys %lg], [sort keys %$xref], 'Message-ID range OK');
+
+       my $rover = $n->xrover('1-');
+       is_deeply([sort keys %lg], [sort keys %$rover], 'XROVER range OK');
 };
 {
        local $ENV{NPROC} = 2;
@@ -231,7 +248,8 @@ EOF
 {
        ok($im->add($mime), 'add message to be purged');
        local $SIG{__WARN__} = sub {};
-       ok($im->purge($mime), 'purged message');
+       ok(my $cmts = $im->purge($mime), 'purged message');
+       like($cmts->[0], qr/\A[a-f0-9]{40}\z/, 'purge returned current commit');
        $im->done;
 }