X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=t%2Fwatch_maildir_v2.t;h=19a2da7707085b6d536472bd8fbf8525cfbd51d8;hb=0283273a14e1871955f6a9132f4f3f7884ec8a3f;hp=ccc85c173d078719083e6ef83075841f17817e96;hpb=3c39f9c942a6975245fda878e9b957d8d3367662;p=public-inbox.git diff --git a/t/watch_maildir_v2.t b/t/watch_maildir_v2.t index ccc85c17..19a2da77 100644 --- a/t/watch_maildir_v2.t +++ b/t/watch_maildir_v2.t @@ -1,19 +1,16 @@ -# Copyright (C) 2018-2019 all contributors +# Copyright (C) 2018-2020 all contributors # License: AGPL-3.0+ +use strict; use Test::More; -use File::Temp qw/tempdir/; -use PublicInbox::MIME; +use PublicInbox::Eml; use Cwd; use PublicInbox::Config; -require './t/common.perl'; +use PublicInbox::TestCommon; +use PublicInbox::Import; require_git(2.6); -my @mods = qw(Search::Xapian DBD::SQLite Filesys::Notify::Simple); -foreach my $mod (@mods) { - eval "require $mod"; - plan skip_all => "$mod missing for watch_maildir_v2.t" if $@; -} +require_mods(qw(Search::Xapian DBD::SQLite Filesys::Notify::Simple)); require PublicInbox::V2Writable; -my $tmpdir = tempdir('watch_maildir-v2-XXXXXX', TMPDIR => 1, CLEANUP => 1); +my ($tmpdir, $for_destroy) = tmpdir(); my $inboxdir = "$tmpdir/v2"; my $maildir = "$tmpdir/md"; my $spamdir = "$tmpdir/spam"; @@ -21,10 +18,10 @@ use_ok 'PublicInbox::WatchMaildir'; use_ok 'PublicInbox::Emergency'; my $cfgpfx = "publicinbox.test"; my $addr = 'test-public@example.com'; -my @cmd = ('blib/script/public-inbox-init', '-V2', 'test', $inboxdir, +my @cmd = ('-init', '-V2', 'test', $inboxdir, 'http://example.com/v2list', $addr); local $ENV{PI_CONFIG} = "$tmpdir/pi_config"; -is(system(@cmd), 0, 'public-inbox init OK'); +ok(run_script(\@cmd), 'public-inbox init OK'); my $msg = <new($config)->scan('full'); } - ($nr, $msgs) = $srch->reopen->query(''); + my ($nr, $msgs) = $srch->reopen->query(''); is($nr, 0, 'inbox is still empty'); is(unlink(glob("$maildir/new/*")), 1); } @@ -119,7 +116,7 @@ More majordomo info at http://vger.kernel.org/majordomo-info.html\n); PublicInbox::Emergency->new($maildir)->prepare(\$msg); $config->{'publicinboxwatch.spamcheck'} = 'spamc'; PublicInbox::WatchMaildir->new($config)->scan('full'); - ($nr, $msgs) = $srch->reopen->query(''); + my ($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'); @@ -129,10 +126,10 @@ More majordomo info at http://vger.kernel.org/majordomo-info.html\n); { my $patch = 't/data/0001.patch'; open my $fh, '<', $patch or die "failed to open $patch: $!\n"; - $msg = eval { local $/; <$fh> }; + $msg = do { local $/; <$fh> }; PublicInbox::Emergency->new($maildir)->prepare(\$msg); PublicInbox::WatchMaildir->new($config)->scan('full'); - ($nr, $msgs) = $srch->reopen->query('dfpost:6e006fd7'); + my ($nr, $msgs) = $srch->reopen->query('dfpost:6e006fd7'); is($nr, 1, 'diff postimage found'); my $post = $msgs->[0]; ($nr, $msgs) = $srch->query('dfpre:090d998b6c2c'); @@ -145,7 +142,7 @@ More majordomo info at http://vger.kernel.org/majordomo-info.html\n); my $v1repo = "$tmpdir/v1"; my $v1pfx = "publicinbox.v1"; my $v1addr = 'v1-public@example.com'; - is(system(qw(git init -q --bare), $v1repo), 0, 'v1 init OK'); + PublicInbox::Import::init_bare($v1repo); my $cfg2 = <