diff options
author | Xavier Leroy <xavier.leroy@inria.fr> | 2017-10-08 10:05:23 +0200 |
---|---|---|
committer | Xavier Leroy <xavier.leroy@inria.fr> | 2017-10-08 10:05:23 +0200 |
commit | b6bda6a76e1275bca8102ed606d30de60a50c5f7 (patch) | |
tree | 0d9003edbca68dc9a004153c37a1d991d21ae18a | |
parent | 801993dc8d2782ba83e9dc30e55dfdadd7c6f0f5 (diff) | |
download | ocaml-b6bda6a76e1275bca8102ed606d30de60a50c5f7.tar.gz |
tests/lib-threads: make signal tests more reliable
signal2.ml: normalize the signal numbers
signal.checker: accept some "ab" output after the "exiting" message
(exiting is not instantaneous; the threads can still emit some a's and b's)
signal2.checker: do like signal.checker
-rw-r--r-- | testsuite/tests/lib-threads/signal.checker | 2 | ||||
-rw-r--r-- | testsuite/tests/lib-threads/signal2.checker | 3 | ||||
-rw-r--r-- | testsuite/tests/lib-threads/signal2.ml | 4 |
3 files changed, 6 insertions, 3 deletions
diff --git a/testsuite/tests/lib-threads/signal.checker b/testsuite/tests/lib-threads/signal.checker index 181d3c5afc..8bb0d3da20 100644 --- a/testsuite/tests/lib-threads/signal.checker +++ b/testsuite/tests/lib-threads/signal.checker @@ -13,4 +13,4 @@ #* * #************************************************************************** -sed -e 1q signal.result | grep -q '^[ab]*Got ctrl-C, exiting...$' +sed -e 1q signal.result | grep -q '^[ab]*Got ctrl-C, exiting...[ab]\{0,2\}$' diff --git a/testsuite/tests/lib-threads/signal2.checker b/testsuite/tests/lib-threads/signal2.checker index 56fe7db3d6..aea6ff0189 100644 --- a/testsuite/tests/lib-threads/signal2.checker +++ b/testsuite/tests/lib-threads/signal2.checker @@ -13,4 +13,5 @@ #* * #************************************************************************** -sed -e 1q signal2.result | grep -q '^[ab]*' +sed -e 1q signal2.result | grep -q '^[ab]*Got signal INT, exiting...[ab]\{0,2\}$' + diff --git a/testsuite/tests/lib-threads/signal2.ml b/testsuite/tests/lib-threads/signal2.ml index b7cda56df7..23c85d6fd4 100644 --- a/testsuite/tests/lib-threads/signal2.ml +++ b/testsuite/tests/lib-threads/signal2.ml @@ -8,4 +8,6 @@ let _ = ignore (Thread.create (print_message 0.6666666666) 'a'); ignore (Thread.create (print_message 1.0) 'b'); let s = Thread.wait_signal [Sys.sigint; Sys.sigterm] in - Printf.printf "Got signal %d, exiting...\n" s + Printf.printf "Got signal %s, exiting...\n" + (if s = Sys.sigint then "INT" else + if s = Sys.sigterm then "TERM" else "unknown") |