[commit: process] master: Test for #7229 (9547cf4)
Simon Marlow
marlowsd at gmail.com
Mon Sep 24 13:11:48 CEST 2012
Repository : ssh://darcs.haskell.org//srv/darcs/packages/process
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/9547cf40ac1ddcd471a8ce75f927b382a82c1038
>---------------------------------------------------------------
commit 9547cf40ac1ddcd471a8ce75f927b382a82c1038
Author: Simon Marlow <marlowsd at gmail.com>
Date: Mon Sep 24 12:11:14 2012 +0100
Test for #7229
>---------------------------------------------------------------
tests/all.T | 2 ++
tests/process009.hs | 18 ++++++++++++++++++
tests/process009.stdout | 3 +++
3 files changed, 23 insertions(+), 0 deletions(-)
diff --git a/tests/all.T b/tests/all.T
index 5d53d0b..5d621ce 100644
--- a/tests/all.T
+++ b/tests/all.T
@@ -30,3 +30,5 @@ test('4198',
test('3994', only_ways(['threaded1','threaded2']), compile_and_run, [''])
test('T4889', normal, compile_and_run, [''])
+
+test('process009', if_os('mingw32', skip), compile_and_run, [''])
diff --git a/tests/process009.hs b/tests/process009.hs
new file mode 100644
index 0000000..7cd4c39
--- /dev/null
+++ b/tests/process009.hs
@@ -0,0 +1,18 @@
+import Control.Monad
+import System.Exit
+import System.Process
+import Data.Maybe
+
+-- Test that we get the right exit code for processes that terminate
+-- with a signal (#7229)
+
+main = do
+ (_,_,_,p) <- createProcess (shell "kill -HUP $$")
+ waitForProcess p >>= print
+ getProcessExitCode p >>= print
+
+ (_,_,_,p) <- createProcess (shell "kill -HUP $$")
+ forever $ do
+ r <- getProcessExitCode p
+ if (isJust r) then do print r; exitWith ExitSuccess else return ()
+
diff --git a/tests/process009.stdout b/tests/process009.stdout
new file mode 100644
index 0000000..ccc35c1
--- /dev/null
+++ b/tests/process009.stdout
@@ -0,0 +1,3 @@
+ExitFailure 129
+Just (ExitFailure 129)
+Just (ExitFailure 129)
More information about the Cvs-libraries
mailing list