summaryrefslogtreecommitdiff
path: root/test cases/unit
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2022-11-19 21:22:55 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2022-11-21 16:44:24 +0200
commit3ae89a7150264ae5a112975af1377ee1c04cb994 (patch)
tree1b2a5ddb3ee3d96c590d0e2909e5e7c39e128767 /test cases/unit
parente5ce7f0770ce392dfefffe3c0d66dcc024b41ad0 (diff)
downloadmeson-3ae89a7150264ae5a112975af1377ee1c04cb994.tar.gz
Handle freezing tests. Fixes #10752.
Diffstat (limited to 'test cases/unit')
-rw-r--r--test cases/unit/109 freeze/freeze.c21
-rw-r--r--test cases/unit/109 freeze/meson.build4
2 files changed, 25 insertions, 0 deletions
diff --git a/test cases/unit/109 freeze/freeze.c b/test cases/unit/109 freeze/freeze.c
new file mode 100644
index 000000000..0a45c1a70
--- /dev/null
+++ b/test cases/unit/109 freeze/freeze.c
@@ -0,0 +1,21 @@
+#include<stdio.h>
+#include <signal.h>
+#include <string.h>
+#include <stdlib.h>
+
+static void do_nothing(int signo, siginfo_t *info, void *context) {
+}
+
+int main(int argc, char **argv) {
+ struct sigaction sa;
+ memset(&sa, 0, sizeof(struct sigaction));
+ sa.sa_sigaction = do_nothing;
+ if (sigaction(SIGTERM, &sa, NULL) == -1) {
+ printf("Could not set up signal handler.\n");
+ return 1;
+ }
+ printf("Freezing forever.\n");
+ while(1) {
+ }
+ return 0;
+}
diff --git a/test cases/unit/109 freeze/meson.build b/test cases/unit/109 freeze/meson.build
new file mode 100644
index 000000000..1a84f3786
--- /dev/null
+++ b/test cases/unit/109 freeze/meson.build
@@ -0,0 +1,4 @@
+project('freeze', 'c')
+
+e = executable('freeze', 'freeze.c')
+test('freeze', e, timeout: 1)