From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.0 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 2781C20188 for ; Wed, 15 Jun 2016 00:37:44 +0000 (UTC) From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 2/9] t/feed.t: make IPC::Run usage optional Date: Wed, 15 Jun 2016 00:37:35 +0000 Message-Id: <20160615003742.22538-3-e@80x24.org> In-Reply-To: <20160615003742.22538-1-e@80x24.org> References: <20160615003742.22538-1-e@80x24.org> List-Id: Since ssoma is optional, here, IPC::Run shall also be optional. (And it may be removed entirely in the future). --- t/feed.t | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/t/feed.t b/t/feed.t index ab92039..26c4bce 100644 --- a/t/feed.t +++ b/t/feed.t @@ -8,7 +8,6 @@ use PublicInbox::Feed; use PublicInbox::Git; use PublicInbox::Import; use PublicInbox::Config; -use IPC::Run qw/run/; use File::Temp qw/tempdir/; my $have_xml_feed = eval { require XML::Feed; 1 }; require 't/common.perl'; @@ -22,6 +21,8 @@ sub string_feed { my %SSOMA; sub rand_use ($) { return 0 if $ENV{FAST}; + eval { require IPC::Run }; + return 0 if $@; my $cmd = $_[0]; my $x = $SSOMA{$cmd}; unless ($x) { @@ -80,7 +81,7 @@ EOF if (rand_use('ssoma-mda')) { $im->done; my $str = $mime->as_string; - run(['ssoma-mda', $git_dir], \$str) or + IPC::Run::run(['ssoma-mda', $git_dir], \$str) or die "mda failed: $?\n"; } else { like($im->add($mime), qr/\A:\d+/, 'added'); @@ -123,14 +124,9 @@ Date: Thu, 01 Jan 1970 00:00:00 +0000 EOF if (rand_use('ssoma-mda')) { - my $pid = open(my $pipe, "|-"); - defined $pid or die "fork/pipe failed: $!"; - if ($pid == 0) { - exec("ssoma-mda", $git_dir); - } - - print $pipe $spam->as_string or die "print failed: $!"; - close $pipe or die "close pipe failed: $!"; + my $str = $spam->as_string; + IPC::Run::run(['ssoma-mda', $git_dir], \$str) or + die "mda failed: $?\n"; } else { $im->add($spam); $im->done; @@ -155,7 +151,7 @@ EOF # nuke spam if (rand_use('ssoma-rm')) { my $spam_str = $spam->as_string; - run(["ssoma-rm", $git_dir], \$spam_str) or + IPC::Run::run(["ssoma-rm", $git_dir], \$spam_str) or die "ssoma-rm failed: $?\n"; } else { $im->remove($spam);