diff options
author | Steve Hay <SteveHay@planit.com> | 2005-05-27 16:15:41 +0000 |
---|---|---|
committer | Steve Hay <SteveHay@planit.com> | 2005-05-27 16:15:41 +0000 |
commit | 5c5be41ca584ca84b007976e40b3e32e6829bc3f (patch) | |
tree | fa2f7ac7ae541a4c4e0cd315243f8b602e3d9b50 /t/run | |
parent | ddacffcfccb8d9bc0952350f177ec6e58907d72a (diff) | |
download | perl-5c5be41ca584ca84b007976e40b3e32e6829bc3f.tar.gz |
Skip signals and core dump tests on Win32
See http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2005-05/msg00749.html
p4raw-id: //depot/perl@24606
Diffstat (limited to 't/run')
-rw-r--r-- | t/run/exit.t | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/t/run/exit.t b/t/run/exit.t index ef39e04bbd..5075b9368e 100644 --- a/t/run/exit.t +++ b/t/run/exit.t @@ -32,29 +32,36 @@ is( ${^CHILD_ERROR_NATIVE}, 0, 'Normal exit ${^CHILD_ERROR_NATIVE}' ); if ($^O ne 'VMS') { my $posix_ok = eval { require POSIX; }; + my $wait_macros_ok = defined &POSIX::WIFEXITED; $exit = run('exit 42'); is( $exit >> 8, 42, 'Non-zero exit' ); is( $exit, $?, 'Non-zero exit $?' ); isnt( !${^CHILD_ERROR_NATIVE}, 0, 'Non-zero exit ${^CHILD_ERROR_NATIVE}' ); - SKIP: { - skip("No POSIX", 3) unless $posix_ok; - ok(POSIX::WIFEXITED(${^CHILD_ERROR_NATIVE}), "WIFEXITED"); - ok(!POSIX::WIFSIGNALED(${^CHILD_ERROR_NATIVE}), "WIFSIGNALED"); - is(POSIX::WEXITSTATUS(${^CHILD_ERROR_NATIVE}), 42, "WEXITSTATUS"); + SKIP: { + skip("No POSIX", 3) unless $posix_ok; + skip("No POSIX wait macros", 3) unless $wait_macros_ok; + ok(POSIX::WIFEXITED(${^CHILD_ERROR_NATIVE}), "WIFEXITED"); + ok(!POSIX::WIFSIGNALED(${^CHILD_ERROR_NATIVE}), "WIFSIGNALED"); + is(POSIX::WEXITSTATUS(${^CHILD_ERROR_NATIVE}), 42, "WEXITSTATUS"); } - $exit = run('kill 15, $$; sleep(1);'); + SKIP: { + skip("Skip signals and core dump tests on Win32", 7) if $^O eq 'MSWin32'; + + $exit = run('kill 15, $$; sleep(1);'); - is( $exit & 127, 15, 'Term by signal' ); - ok( !($exit & 128), 'No core dump' ); - is( $? & 127, 15, 'Term by signal $?' ); - isnt( ${^CHILD_ERROR_NATIVE}, 0, 'Term by signal ${^CHILD_ERROR_NATIVE}' ); - SKIP: { + is( $exit & 127, 15, 'Term by signal' ); + ok( !($exit & 128), 'No core dump' ); + is( $? & 127, 15, 'Term by signal $?' ); + isnt( ${^CHILD_ERROR_NATIVE}, 0, 'Term by signal ${^CHILD_ERROR_NATIVE}' ); + SKIP: { skip("No POSIX", 3) unless $posix_ok; + skip("No POSIX wait macros", 3) unless $wait_macros_ok; ok(!POSIX::WIFEXITED(${^CHILD_ERROR_NATIVE}), "WIFEXITED"); ok(POSIX::WIFSIGNALED(${^CHILD_ERROR_NATIVE}), "WIFSIGNALED"); is(POSIX::WTERMSIG(${^CHILD_ERROR_NATIVE}), 15, "WTERMSIG"); + } } } else { |