Commit | Line | Data |
7e1af8bc |
1 | #!./perl -w |
7e1af8bc |
2 | |
3 | BEGIN { |
4 | chdir 't' if -d 't'; |
5 | @INC = '../lib'; |
6 | # make warnings fatal |
7 | $SIG{__WARN__} = sub { die @_ }; |
8 | } |
9 | |
71be2cbc |
10 | use strict; |
7e1af8bc |
11 | use IO::Handle; |
12 | use IPC::Open2; |
13 | #require 'open2.pl'; use subs 'open2'; |
14 | |
15 | sub ok { |
16 | my ($n, $result, $info) = @_; |
17 | if ($result) { |
18 | print "ok $n\n"; |
19 | } |
20 | else { |
21 | print "not ok $n\n"; |
22 | print "# $info\n" if $info; |
23 | } |
24 | } |
25 | |
26 | my ($pid, $reaped_pid); |
27 | STDOUT->autoflush; |
28 | STDERR->autoflush; |
29 | |
30 | print "1..7\n"; |
31 | |
32 | ok 1, $pid = open2 'READ', 'WRITE', $^X, '-e', 'print scalar <STDIN>'; |
33 | ok 2, print WRITE "hi kid\n"; |
34 | ok 3, <READ> eq "hi kid\n"; |
35 | ok 4, close(WRITE), $!; |
36 | ok 5, close(READ), $!; |
37 | $reaped_pid = waitpid $pid, 0; |
38 | ok 6, $reaped_pid == $pid, $reaped_pid; |
39 | ok 7, $? == 0, $?; |