my $srch = $ibx->search;
PublicInbox::WatchMaildir->new($config)->scan('full');
-my $res = $srch->reopen->query('');
-is($res->{total}, 1, 'got one revision');
+my ($total, undef) = $srch->reopen->query('');
+is($total, 1, 'got one revision');
# my $git = PublicInbox::Git->new("$mainrepo/git/0.git");
# my @list = $git->qx(qw(rev-list refs/heads/master));
$write_spam->();
is(unlink(glob("$maildir/new/*")), 1, 'unlinked old spam');
PublicInbox::WatchMaildir->new($config)->scan('full');
-is($srch->reopen->query('')->{total}, 0, 'deleted file');
+is(($srch->reopen->query(''))[0], 0, 'deleted file');
# check with scrubbing
{
More majordomo info at http://vger.kernel.org/majordomo-info.html\n);
PublicInbox::Emergency->new($maildir)->prepare(\$msg);
PublicInbox::WatchMaildir->new($config)->scan('full');
- $res = $srch->reopen->query('');
- is($res->{total}, 1, 'got one file back');
- my $mref = $ibx->msg_by_smsg($res->{msgs}->[0]);
+ my ($nr, $msgs) = $srch->reopen->query('');
+ is($nr, 1, 'got one file back');
+ my $mref = $ibx->msg_by_smsg($msgs->[0]);
like($$mref, qr/something\n\z/s, 'message scrubbed on import');
is(unlink(glob("$maildir/new/*")), 1, 'unlinked spam');
$write_spam->();
PublicInbox::WatchMaildir->new($config)->scan('full');
- $res = $srch->reopen->query('');
- is($res->{total}, 0, 'inbox is empty again');
+ ($nr, $msgs) = $srch->reopen->query('');
+ is($nr, 0, 'inbox is empty again');
}
{
local $SIG{__WARN__} = sub {}; # quiet spam check warning
PublicInbox::WatchMaildir->new($config)->scan('full');
}
- $res = $srch->reopen->query('');
- is($res->{total}, 0, 'inbox is still empty');
+ ($nr, $msgs) = $srch->reopen->query('');
+ is($nr, 0, 'inbox is still empty');
is(unlink(glob("$maildir/new/*")), 1);
}
PublicInbox::Emergency->new($maildir)->prepare(\$msg);
$config->{'publicinboxwatch.spamcheck'} = 'spamc';
PublicInbox::WatchMaildir->new($config)->scan('full');
- $res = $srch->reopen->query('');
- is($res->{total}, 1, 'inbox has one mail after spamc OK-ed a message');
- my $mref = $ibx->msg_by_smsg($res->{msgs}->[0]);
+ ($nr, $msgs) = $srch->reopen->query('');
+ is($nr, 1, 'inbox has one mail after spamc OK-ed a message');
+ my $mref = $ibx->msg_by_smsg($msgs->[0]);
like($$mref, qr/something\n\z/s, 'message scrubbed on import');
+ delete $config->{'publicinboxwatch.spamcheck'};
+}
+
+{
+ my $patch = 't/data/0001.patch';
+ open my $fh, '<', $patch or die "failed to open $patch: $!\n";
+ $msg = eval { local $/; <$fh> };
+ PublicInbox::Emergency->new($maildir)->prepare(\$msg);
+ PublicInbox::WatchMaildir->new($config)->scan('full');
+ ($nr, $msgs) = $srch->reopen->query('dfpost:6e006fd7');
+ is($nr, 1, 'diff postimage found');
+ my $post = $msgs->[0];
+ ($nr, $msgs) = $srch->query('dfpre:090d998b6c2c');
+ is($nr, 1, 'diff preimage found');
+ is($post->{blob}, $msgs->[0]->{blob}, 'same message');
}
done_testing;