X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=t%2Fwatch_filter_rubylang.t;h=0ea680eef853cdecbde0b40b7c09e6006becd666;hb=3c313f9034aac96182e2efdc2f92c40803626f32;hp=da383c15ef4b294cbf5c047395474a8f88e66354;hpb=99566f264b4a13f5e9096411f1c87c4def153ab1;p=public-inbox.git diff --git a/t/watch_filter_rubylang.t b/t/watch_filter_rubylang.t index da383c15..0ea680ee 100644 --- a/t/watch_filter_rubylang.t +++ b/t/watch_filter_rubylang.t @@ -2,9 +2,8 @@ # License: AGPL-3.0+ use strict; use warnings; -require './t/common.perl'; +use PublicInbox::TestCommon; use Test::More; -use File::Temp qw/tempdir/; use PublicInbox::MIME; use PublicInbox::Config; my @mods = qw(Filesys::Notify::Simple DBD::SQLite Search::Xapian); @@ -15,7 +14,7 @@ foreach my $mod (@mods) { use_ok 'PublicInbox::WatchMaildir'; use_ok 'PublicInbox::Emergency'; -my $tmpdir = tempdir('watch-XXXXXX', TMPDIR => 1, CLEANUP => 1); +my ($tmpdir, $for_destroy) = tmpdir(); local $ENV{PI_CONFIG} = "$tmpdir/pi_config"; my @v = qw(V1); @@ -32,15 +31,15 @@ for my $v (@v) { my @warn; $SIG{__WARN__} = sub { push @warn, @_ }; my $cfgpfx = "publicinbox.$v"; - my $mainrepo = "$tmpdir/$v"; + my $inboxdir = "$tmpdir/$v"; my $maildir = "$tmpdir/md-$v"; my $spamdir = "$tmpdir/spam-$v"; my $addr = "test-$v\@example.com"; - my @cmd = ('blib/script/public-inbox-init', "-$v", $v, $mainrepo, + my @cmd = ('-init', "-$v", $v, $inboxdir, "http://example.com/$v", $addr); - is(system(@cmd), 0, 'public-inbox init OK'); + ok(run_script(\@cmd), 'public-inbox init OK'); if ($v eq 'V1') { - is(system('blib/script/public-inbox-index', $mainrepo), 0); + ok(run_script(['-index', $inboxdir]), 'v1 indexed'); } PublicInbox::Emergency->new($spamdir); @@ -70,15 +69,15 @@ spam EOF PublicInbox::Emergency->new($maildir)->prepare(\"$spam"); - my %orig = ( - "$cfgpfx.address" => $addr, - "$cfgpfx.mainrepo" => $mainrepo, - "$cfgpfx.watch" => "maildir:$maildir", - "$cfgpfx.filter" => 'PublicInbox::Filter::RubyLang', - "$cfgpfx.altid" => 'serial:alerts:file=msgmap.sqlite3', - "publicinboxwatch.watchspam" => "maildir:$spamdir", - ); - my $config = PublicInbox::Config->new({%orig}); + my $orig = <new(\$orig); my $ibx = $config->lookup_name($v); ok($ibx, 'found inbox by name'); @@ -108,7 +107,7 @@ EOF } $w->scan('full'); - $config = PublicInbox::Config->new({%orig}); + $config = PublicInbox::Config->new(\$orig); $ibx = $config->lookup_name($v); ($tot, undef) = $ibx->search->reopen->query('b:spam'); is($tot, 0, 'spam removed');