about summary refs log tree commit homepage
path: root/t/v2writable.t
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2019-10-24 00:12:40 +0000
committerEric Wong <e@80x24.org>2019-10-28 10:49:14 +0000
commite67dc3e9fc73029332a632d022002d3ce80c1306 (patch)
tree7790f5cc66b0035666575418b659f37876cfedf4 /t/v2writable.t
parenta8ae7e31ac36bcda04bf13a1b834207a89b0014c (diff)
downloadpublic-inbox-e67dc3e9fc73029332a632d022002d3ce80c1306.tar.gz
Since we replace extra Message-ID headers with X-Alt-Message-ID
to placate NNTP clients, we should allow searching and indexing
on X-Alt-Message-ID just like we do with Message-ID.
Diffstat (limited to 't/v2writable.t')
-rw-r--r--t/v2writable.t16
1 files changed, 16 insertions, 0 deletions
diff --git a/t/v2writable.t b/t/v2writable.t
index c2daac2f..2b825768 100644
--- a/t/v2writable.t
+++ b/t/v2writable.t
@@ -115,6 +115,7 @@ if ('ensure git configs are correct') {
 
 {
         $mime->header_set('Message-Id', '<abcde@1>', '<abcde@2>');
+        $mime->header_set('X-Alt-Message-Id', '<alt-id-for-nntp>');
         $mime->header_set('References', '<zz-mid@b>');
         ok($im->add($mime), 'message with multiple Message-ID');
         $im->done;
@@ -127,6 +128,21 @@ if ('ensure git configs are correct') {
         is($mset2->size, 1, 'message found by second MID');
         is((($mset1->items)[0])->get_docid, (($mset2->items)[0])->get_docid,
                 'same document') if ($mset1->size);
+
+        my $alt = $srch->reopen->query('m:alt-id-for-nntp', { mset => 1 });
+        is($alt->size, 1, 'message found by alt MID (NNTP)');
+        is((($alt->items)[0])->get_docid, (($mset1->items)[0])->get_docid,
+                'same document') if ($mset1->size);
+        $mime->header_set('X-Alt-Message-Id');
+
+        my %uniq;
+        for my $mid (qw(abcde@1 abcde@2 alt-id-for-nntp)) {
+                my $msgs = $ibx->over->get_thread($mid);
+                my $key = join(' ', sort(map { $_->{num} } @$msgs));
+                $uniq{$key}++;
+        }
+        is(scalar(keys(%uniq)), 1, 'all alt Message-ID queries give same smsg');
+        is_deeply([values(%uniq)], [3], '3 queries, 3 results');
 }
 
 {