use Test::More;
use PublicInbox::MIME;
use PublicInbox::InboxWritable;
-use File::Temp qw/tempdir/;
-require './t/common.perl';
+use PublicInbox::TestCommon;
+use Cwd qw(abs_path);
require_git(2.6); # replace is v2 only, for now...
foreach my $mod (qw(DBD::SQLite)) {
eval "require $mod";
plan skip_all => "$mod missing for $0" if $@;
}
+local $ENV{HOME} = abs_path('t');
+
sub test_replace ($$$) {
my ($v, $level, $opt) = @_;
diag "v$v $level replace";
my $this = "pi-$v-$level-replace";
- my $tmpdir = tempdir("$this-tmp-XXXXXX", TMPDIR => 1, CLEANUP => 1);
+ my ($tmpdir, $for_destroy) = tmpdir($this);
my $ibx = PublicInbox::Inbox->new({
- mainrepo => "$tmpdir/testbox",
+ inboxdir => "$tmpdir/testbox",
name => $this,
version => $v,
-primary_address => 'test@example.com',
my $t19931002 = qr/ 749520000 /;
is_deeply([grep(/$t19931002/, @all)], [], "nothing matches $t19931002");
- for my $dir (glob("$ibx->{mainrepo}/git/*.git")) {
+ for my $dir (glob("$ibx->{inboxdir}/git/*.git")) {
my ($bn) = ($dir =~ m!([^/]+)\z!);
- is(system(qw(git --git-dir), $dir, qw(fsck --strict)), 0,
- "git fsck is clean in epoch $bn");
+ is(system(qw(git --git-dir), $dir,
+ qw(fsck --strict --no-progress)),
+ 0, "git fsck is clean in epoch $bn");
}
my $thread_b = $ibx->over->get_thread('replace@example.com');
test_replace(2, 'basic', $opt = { %$opt, post => *pad_msgs });
test_replace(2, 'basic', $opt = { %$opt, rotate_bytes => 1 });
-SKIP: if ('test xapian') {
+SKIP: {
require PublicInbox::Search;
PublicInbox::Search::load_xapian() or skip 'Search::Xapian missing', 8;
for my $l (qw(medium)) {