From 204626589e05d0288cdf232daffc511b01c63576 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Fri, 15 Nov 2019 09:50:46 +0000 Subject: t/purge: convert to run_script This nets us another sizeable speedup. --- t/purge.t | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 't/purge.t') diff --git a/t/purge.t b/t/purge.t index 67c4e58d..bcdbad52 100644 --- a/t/purge.t +++ b/t/purge.t @@ -6,12 +6,12 @@ use Test::More; use File::Temp qw/tempdir/; require './t/common.perl'; require_git(2.6); -my @mods = qw(IPC::Run DBI DBD::SQLite); +my @mods = qw(DBI DBD::SQLite); foreach my $mod (@mods) { eval "require $mod"; plan skip_all => "missing $mod for t/purge.t" if $@; }; -use Cwd qw(abs_path); +use Cwd qw(abs_path); # we need this since we chdir below my $purge = abs_path('blib/script/public-inbox-purge'); my $tmpdir = tempdir('pi-purge-XXXXXX', TMPDIR => 1, CLEANUP => 1); use_ok 'PublicInbox::V2Writable'; @@ -47,16 +47,16 @@ $v2w->done; # failing cases, first: my $in = "$raw\nMOAR\n"; my ($out, $err) = ('', ''); -ok(IPC::Run::run([$purge, '-f', $inboxdir], \$in, \$out, \$err), - 'purge -f OK'); +my $opt = { 0 => \$in, 1 => \$out, 2 => \$err }; +ok(run_script([$purge, '-f', $inboxdir], undef, $opt), 'purge -f OK'); $out = $err = ''; -ok(!IPC::Run::run([$purge, $inboxdir], \$in, \$out, \$err), - 'mismatch fails without -f'); +ok(!run_script([$purge, $inboxdir], undef, $opt), 'mismatch fails without -f'); is($? >> 8, 1, 'missed purge exits with 1'); # a successful case: -ok(IPC::Run::run([$purge, $inboxdir], \$raw, \$out, \$err), 'match OK'); +$opt->{0} = \$raw; +ok(run_script([$purge, $inboxdir], undef, $opt), 'match OK'); like($out, qr/\b[a-f0-9]{40,}/m, 'removed commit noted'); # add (old) vger filter to config file @@ -83,13 +83,13 @@ EOF $out = $err = ''; ok(chdir('/'), "chdir / OK for --all test"); -ok(IPC::Run::run([$purge, '--all'], \$pre_scrub, \$out, \$err), - 'scrub purge OK'); +$opt->{0} = \$pre_scrub; +ok(run_script([$purge, '--all'], undef, $opt), 'scrub purge OK'); like($out, qr/\b[a-f0-9]{40,}/m, 'removed commit noted'); # diag "out: $out"; diag "err: $err"; $out = $err = ''; -ok(!IPC::Run::run([$purge, '--all' ], \$pre_scrub, \$out, \$err), +ok(!run_script([$purge, '--all' ], undef, $opt), 'scrub purge not idempotent without -f'); # diag "out: $out"; diag "err: $err"; -- cgit v1.2.3-24-ge0c7