~ chicken-core (chicken-5) 83498aa82d39a21410a56a1e90d91d8cf6c7d702


commit 83498aa82d39a21410a56a1e90d91d8cf6c7d702
Author:     felix <felix@call-with-current-continuation.org>
AuthorDate: Sun Sep 14 22:12:18 2014 +0200
Commit:     felix <felix@call-with-current-continuation.org>
CommitDate: Sun Sep 14 22:12:18 2014 +0200

    Removed obsolete test.

diff --git a/tests/srfi-18-signal-test.scm b/tests/srfi-18-signal-test.scm
deleted file mode 100644
index 46b7dd20..00000000
--- a/tests/srfi-18-signal-test.scm
+++ /dev/null
@@ -1,71 +0,0 @@
-#+mingw32
-(begin
-  (print "this test can not be run on Windows/mingw unless we find a way to send signals")
-  (exit))
-
-(use srfi-18 posix utils)
-
-(define done #f)
-
-; set done = true on timer expiration
-(set-signal-handler! signal/alrm (lambda (signal) (set! done #t)))
-
-(define (work-loop count)
-  (cond ((> count 100) (error "Loop limit exceeded"))
-        ((not done)
-         (display ".")
-         (thread-sleep! 0.25)
-         (work-loop (add1 count)))))
-
-(define (new-thread)
-  (set! done #f)
-  (make-thread (lambda () (work-loop 0))))
-
-;; Needs external signal (not from another thread) it seems,
-;; so let the OS deliver it to us when we're ready:
-(foreign-declare "#include <sys/time.h>")
-((foreign-lambda* void ()
-   "#ifndef __MINGW32__ \n"
-   "struct itimerval timer;"
-   "timer.it_value.tv_sec = 1;"
-   "timer.it_value.tv_usec = 0;"
-   "timer.it_interval.tv_sec = 0;"
-   "timer.it_interval.tv_usec = 0;"
-   "setitimer(ITIMER_REAL, &timer, NULL);\n"
-   "#endif"))
-
-(display "Testing correct handling of thread-join! with external signals:")
-(flush-output)
-(let ((t (new-thread)))
-  (thread-start! t)
-  (thread-join! t))
-
-(print " thread terminated gracefully, this is good")
-
-(display "thread-join with timeout: ")
-(flush-output)
-(let ((t (new-thread)))
-  (condition-case (begin (thread-start! t)
-                         (thread-join! t 1))
-    ((join-timeout-exception)
-     (print "timeout exception as expected")
-     (thread-terminate! t))
-    (exn ()
-         (thread-terminate! t)
-         (signal exn))))
-
-
-(display "thread-join with return value:")
-(flush-output)
-(let ((t (new-thread)))
-  (assert (condition-case (begin (thread-start! t)
-                                 (thread-join! t 1 'bla))
-           ((join-timeout-exception)
-            (print " timeout exception as expected")
-            (thread-terminate! t))
-           (exn ()
-                (thread-terminate! t)
-                (signal exn)))
-          'bla))
-
-(print " done.")
Trap