]> Sergey Matveev's repositories - public-inbox.git/blobdiff - t/over.t
www: drop --subject from "git send-email" instructions
[public-inbox.git] / t / over.t
index 3e2860f8f96d0d40805b72f5b954b79e5970c67b..1f2df7cf065a72a2a4a6e7368e5f53b54010f13d 100644 (file)
--- a/t/over.t
+++ b/t/over.t
@@ -1,4 +1,4 @@
-# Copyright (C) 2018-2020 all contributors <meta@public-inbox.org>
+# Copyright (C) 2018-2021 all contributors <meta@public-inbox.org>
 # License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
 use strict;
 use warnings;
@@ -75,14 +75,28 @@ SKIP: {
 }
 
 # ext index additions
+$over->eidx_prep;
 {
-       my $hex = 'deadbeefcafe';
-       my $n = $over->oid_add($hex);
-       ok($n > 0, 'oid_add returned number');
-       is($over->oid2num($hex), $n, 'oid2num works');
-       my $n2 = $over->oid_add($hex.$hex);
-       ok($n2 > $n, 'oid_add increments');
-       is($over->oid2num($hex.$hex), $n2, 'oid2num works again');
+       my @arg = qw(1349 2019 adeadba7cafe example.key);
+       ok($over->add_xref3(@arg), 'first add');
+       ok($over->add_xref3(@arg), 'add idempotent');
+       my $xref3 = $over->get_xref3(1349);
+       is_deeply($xref3, [ 'example.key:2019:adeadba7cafe' ], 'xref3 works');
+
+       @arg = qw(1349 2018 deadbeefcafe example.kee);
+       ok($over->add_xref3(@arg), 'add another xref3');
+       $xref3 = $over->get_xref3(1349);
+       is_deeply($xref3, [ 'example.key:2019:adeadba7cafe',
+                       'example.kee:2018:deadbeefcafe' ],
+                       'xref3 works forw two');
+
+       is($over->dbh->do(<<''), 1, 'remove first');
+DELETE FROM xref3 WHERE xnum = 2019 AND docid = 1349
+
+       $xref3 = $over->get_xref3(1349);
+       is_deeply($xref3, [ 'example.kee:2018:deadbeefcafe' ],
+               'confirm removal successful');
+       $over->rollback_lazy;
 }
 
 done_testing();