From: Eric Wong <e@80x24.org>
Date: Sat, 24 Apr 2021 20:09:36 +0000 (+0000)
Subject: test_common: don't attempt to seek on pipes and terminals
X-Git-Tag: v1.7.0~752
X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=b437cc7f5ad2712d9064c691c5946be80a73eedb;p=public-inbox.git

test_common: don't attempt to seek on pipes and terminals

This allows proper error reporting on daemon failure
when using "check-run".
---

diff --git a/lib/PublicInbox/TestCommon.pm b/lib/PublicInbox/TestCommon.pm
index 49cecacd..09256852 100644
--- a/lib/PublicInbox/TestCommon.pm
+++ b/lib/PublicInbox/TestCommon.pm
@@ -321,6 +321,7 @@ sub run_script ($;$$) {
 	# slurp the redirects back into user-supplied strings
 	for my $fd (1..2) {
 		my $fh = $fhref->[$fd] or next;
+		next unless -f $fh;
 		seek($fh, 0, SEEK_SET) or die "seek: $!";
 		my $redir = $opt->{$fd};
 		local $/;
diff --git a/t/run.perl b/t/run.perl
index 1fb1c5f0..f4e235b7 100755
--- a/t/run.perl
+++ b/t/run.perl
@@ -225,6 +225,6 @@ for (my $i = $repeat; $i != 0; $i--) {
 
 print $OLDOUT "1..".($repeat * scalar(@tests))."\n" if $repeat >= 0;
 if ($lei_env && $$ == $owner_pid) {
-	my $opt = {}; # 1 => $OLDOUT, 2 => $OLDERR };
+	my $opt = { 1 => $OLDOUT, 2 => $OLDERR };
 	run_script([qw(lei daemon-kill)], $lei_env, $opt);
 }