X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=t%2Fmda_filter_rubylang.t;h=dbcb275b397d470fa9cfdbc362d6d89fde658f8a;hb=95bdac7f09c69036efed537a4d03d5bdd2ae4eb6;hp=0fb65a42935bb26aafb4df84814fdbed3003e0a6;hpb=789ac5b0119d8d878380bbe8b3de4c7630460148;p=public-inbox.git diff --git a/t/mda_filter_rubylang.t b/t/mda_filter_rubylang.t index 0fb65a42..dbcb275b 100644 --- a/t/mda_filter_rubylang.t +++ b/t/mda_filter_rubylang.t @@ -1,22 +1,18 @@ -# Copyright (C) 2019 all contributors +# Copyright (C) 2019-2020 all contributors # License: AGPL-3.0+ use strict; use warnings; use Test::More; -use File::Temp qw/tempdir/; use PublicInbox::MIME; use PublicInbox::Config; -my @mods = qw(DBD::SQLite Search::Xapian IPC::Run); -foreach my $mod (@mods) { - eval "require $mod"; - plan skip_all => "$mod missing for mda_filter_rubylang.t" if $@; -} - +use PublicInbox::TestCommon; +require_git(2.6); +require_mods(qw(DBD::SQLite Search::Xapian)); use_ok 'PublicInbox::V2Writable'; -my $tmpdir = tempdir('mda-XXXXXX', TMPDIR => 1, CLEANUP => 1); +my ($tmpdir, $for_destroy) = tmpdir(); my $pi_config = "$tmpdir/pi_config"; local $ENV{PI_CONFIG} = $pi_config; -my $mda = 'blib/script/public-inbox-mda'; +local $ENV{PI_EMERGENCY} = "$tmpdir/emergency"; my @cfg = ('git', 'config', "--file=$pi_config"); is(system(@cfg, 'publicinboxmda.spamcheck', 'none'), 0); @@ -24,19 +20,19 @@ for my $v (qw(V1 V2)) { my @warn; $SIG{__WARN__} = sub { push @warn, @_ }; my $cfgpfx = "publicinbox.$v"; - my $mainrepo = "$tmpdir/$v"; + my $inboxdir = "$tmpdir/$v"; my $addr = "test-$v\@example.com"; - my @cmd = ('blib/script/public-inbox-init', "-$v", $v, $mainrepo, - "http://example.com/$v", $addr); - is(system(@cmd), 0, 'public-inbox init OK'); - is(system('blib/script/public-inbox-index', $mainrepo), 0); + my $cmd = [ '-init', "-$v", $v, $inboxdir, + "http://example.com/$v", $addr ]; + ok(run_script($cmd), 'public-inbox-init'); + ok(run_script(['-index', $inboxdir]), 'public-inbox-index'); is(system(@cfg, "$cfgpfx.filter", 'PublicInbox::Filter::RubyLang'), 0); is(system(@cfg, "$cfgpfx.altid", 'serial:alerts:file=msgmap.sqlite3'), 0); for my $i (1..2) { - local $ENV{ORIGINAL_RECIPIENT} = $addr; - my $msg = < $addr }; + my $opt = { 0 => \(<new; my $ibx = $config->lookup_name($v);