diff options
author | Phil Ruffwind <rf@rufflewind.com> | 2017-01-30 11:49:58 -0500 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2017-01-30 14:00:23 -0500 |
commit | 2ec1c834ca1129b69f4dd3e2586d9f318cbb3fa6 (patch) | |
tree | 7f6f091b7a5a0c061f42f8f89115cafe35c98123 /testsuite/timeout | |
parent | d2cf5dea70acbffb6039dc5eda31c8ff03b8f43e (diff) | |
download | haskell-2ec1c834ca1129b69f4dd3e2586d9f318cbb3fa6.tar.gz |
Fix broken tests
1. DoParamM requires the FlexibleContexts pragma now.
2. topHandler02 and topHandler03 were broken as timeout.py failed to
translate signals to exit codes.
3. topHandler03 does not produce a consistent stderr, as it depends on
what the user has /bin/sh set to. dash writes "Terminated" whereas
bash and zsh produce nothing in non-interactive mode.
4. The remaining tests are broken due to changes in the error message
formatting.
Test Plan: validate
Reviewers: thomie, dfeuer, austin, hvr, bgamari
Reviewed By: bgamari
Subscribers: Phyx, dfeuer
Differential Revision: https://phabricator.haskell.org/D2807
Diffstat (limited to 'testsuite/timeout')
-rw-r--r-- | testsuite/timeout/timeout.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/testsuite/timeout/timeout.py b/testsuite/timeout/timeout.py index 51fb63c179..f3468ad9fb 100644 --- a/testsuite/timeout/timeout.py +++ b/testsuite/timeout/timeout.py @@ -42,8 +42,12 @@ try: (pid2, res) = os.waitpid(pid, 0) if (os.WIFEXITED(res)): sys.exit(os.WEXITSTATUS(res)) - else: - sys.exit(res) + elif os.WIFSIGNALED(res): + # represent signals using the Bourne shell convention + sys.exit(128 + os.WTERMSIG(res)) + else: # WIFCONTINUED or WIFSTOPPED + killProcess(pid) + sys.exit(99) # unexpected except KeyboardInterrupt: sys.exit(98) |