+{
+ my $cmd = [qw(sh -c), 'echo >&2 err; echo out'];
+ my $qsp = PublicInbox::Qspawn->new($cmd, {}, { 2 => 1 });
+ my $res;
+ $qsp->psgi_qx({}, undef, sub { $res = ${$_[0]} });
+ is($res, "err\nout\n", 'captured stderr and stdout');
+
+ $res = undef;
+ $qsp = PublicInbox::Qspawn->new($cmd, {}, { 2 => \*STDOUT });
+ $qsp->psgi_qx({}, undef, sub { $res = ${$_[0]} });
+ is($res, "err\nout\n", 'captured stderr and stdout');
+}
+
+sub finish_err ($) {
+ my ($qsp) = @_;
+ $qsp->finish;
+ $qsp->{err};
+}
+