about summary refs log tree commit homepage
path: root/t/v2reindex.t
diff options
context:
space:
mode:
Diffstat (limited to 't/v2reindex.t')
-rw-r--r--t/v2reindex.t22
1 files changed, 16 insertions, 6 deletions
diff --git a/t/v2reindex.t b/t/v2reindex.t
index ae1570ed..8c49e154 100644
--- a/t/v2reindex.t
+++ b/t/v2reindex.t
@@ -1,14 +1,11 @@
-# Copyright (C) 2018-2020 all contributors <meta@public-inbox.org>
+# Copyright (C) all contributors <meta@public-inbox.org>
 # License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
-use strict;
-use warnings;
-use Test::More;
+use strict; use v5.10.1; use PublicInbox::TestCommon;
 use PublicInbox::Eml;
 use PublicInbox::ContentHash qw(content_digest);
 use File::Path qw(remove_tree);
-use PublicInbox::TestCommon;
 require_git(2.6);
-require_mods(qw(DBD::SQLite Search::Xapian));
+require_mods(qw(DBD::SQLite Xapian));
 use_ok 'PublicInbox::V2Writable';
 use_ok 'PublicInbox::OverIdx';
 my ($inboxdir, $for_destroy) = tmpdir();
@@ -18,6 +15,7 @@ my $ibx_config = {
         version => 2,
         -primary_address => 'test@example.com',
         indexlevel => 'full',
+        -no_fsync => 1,
 };
 my $agpl = do {
         open my $fh, '<', 'COPYING' or die "can't open COPYING: $!";
@@ -543,4 +541,16 @@ EOF
 $check_rethread->('3-headed-monster once');
 $check_rethread->('3-headed-monster twice');
 
+my $rdr = { 2 => \(my $err = '') };
+my $env = { PI_CONFIG => '/dev/null' };
+ok(run_script([qw(-index --reindex --xapian-only), $inboxdir], $env, $rdr),
+        '--xapian-only works');
+is($err, '', 'no errors from --xapian-only');
+undef $for_destroy;
+SKIP: {
+        skip 'only testing lsof(8) output on Linux', 1 if $^O ne 'linux';
+        my $rdr = { 2 => \(my $null_err) };
+        my @d = grep m!/xap[0-9]+/!, lsof_pid $$, $rdr;
+        is_deeply(\@d, [], 'no deleted index files') or diag explain(\@d);
+}
 done_testing();