Commit | Line | Data |
---|---|---|
8d063cd8 LW |
1 | #!./perl |
2 | ||
8d063cd8 | 3 | $| = 1; # flush stdout |
68dc0745 | 4 | |
9429f27a JH |
5 | $ENV{LC_ALL} = 'C'; # Forge English error messages. |
6 | $ENV{LANGUAGE} = 'C'; # Ditto in GNU. | |
7 | ||
68dc0745 | 8 | if ($^O eq 'MSWin32') { |
1d3434b8 | 9 | # XXX the system tests could be written to use ./perl and so work on Win32 |
45c0de28 | 10 | print "1..0 # Skip: shh, win32\n"; |
68dc0745 | 11 | exit(0); |
12 | } | |
13 | ||
378cc40b | 14 | print "1..8\n"; |
8d063cd8 | 15 | |
ec40c0cd IZ |
16 | if ($^O ne 'os2') { |
17 | print "not ok 1\n" if system "echo ok \\1"; # shell interpreted | |
18 | } | |
19 | else { | |
20 | print "ok 1 # skipped: bug/feature of pdksh\n"; # shell interpreted | |
21 | } | |
378cc40b LW |
22 | print "not ok 2\n" if system "echo ok 2"; # split and directly called |
23 | print "not ok 3\n" if system "echo", "ok", "3"; # directly called | |
8d063cd8 | 24 | |
1d3434b8 | 25 | # these should probably be rewritten to match the examples in perlfunc.pod |
378cc40b LW |
26 | if (system "true") {print "not ok 4\n";} else {print "ok 4\n";} |
27 | ||
0994c4d0 JH |
28 | if ($^O eq 'mpeix') { |
29 | print "ok 5 # skipped: status broken on MPE/iX\n"; | |
30 | } else { | |
31 | if ((system "/bin/sh -c 'exit 1'") != 256) { print "not "; } | |
32 | print "ok 5\n"; | |
33 | } | |
378cc40b | 34 | |
d5a9bfb0 | 35 | $rc = system "lskdfj"; |
9429f27a JH |
36 | if ($rc == 255 << 8 or $rc == -1 and |
37 | ( | |
38 | $! == 2 or | |
39 | $! =~ /\bno\b.*\bfile/i or | |
40 | $! == 13 or | |
41 | $! =~ /permission denied/i | |
42 | ) | |
43 | ) | |
d5a9bfb0 | 44 | {print "ok 6\n";} else {print "not ok 6\n";} |
378cc40b LW |
45 | |
46 | unless (exec "lskdjfalksdjfdjfkls") {print "ok 7\n";} else {print "not ok 7\n";} | |
47 | ||
48 | exec "echo","ok","8"; |