Fix system error message decoding on Windows.
[sbcl.git] / tests / deadline.impure.lisp
index 32f14f3..44990e8 100644 (file)
   (sb-ext:run-program "sleep" (list (format nil "~D" seconds))
                       :search t :wait t))
 
-(with-test (:name (:deadline :run-program :trivial))
+(with-test (:name (:deadline :run-program :trivial) :fails-on :win32)
   (assert-timeout (sb-sys:with-deadline (:seconds 1)
                     (run-sleep 3))))
 
-(with-test (:name (:deadline :defer-deadline-1))
+(with-test (:name (:deadline :defer-deadline-1) :fails-on :win32)
   (let ((n 0)
         (final nil))
     (handler-case
@@ -35,7 +35,7 @@
     (assert (= n 2))
     (assert final)))
 
-(with-test (:name (:deadline :defer-deadline-2))
+(with-test (:name (:deadline :defer-deadline-2) :fails-on :win32)
   (let ((n 0)
         (final nil))
     (handler-case
@@ -50,7 +50,7 @@
     (assert (plusp n))
     (assert (not final))))
 
-(with-test (:name (:deadline :cancel-deadline))
+(with-test (:name (:deadline :cancel-deadline) :fails-on :win32)
   (let ((n 0)
         (final nil))
     (handler-case
     (assert (= n 1))
     (assert (not final))))
 
-(with-test (:name (:deadline :get-mutex) :skipped-on '(not (and :sb-thread (not :sb-lutex))))
+(with-test (:name (:deadline :grab-mutex) :skipped-on '(not :sb-thread))
   (assert-timeout
    (let ((lock (sb-thread:make-mutex))
          (waitp t))
-     (sb-thread:make-thread (lambda ()
-                              (sb-thread:get-mutex lock)
-                              (setf waitp nil)
-                              (sleep 5)))
+     (make-join-thread (lambda ()
+                         (sb-thread:grab-mutex lock)
+                         (setf waitp nil)
+                         (sleep 5)))
      (loop while waitp do (sleep 0.01))
      (sb-sys:with-deadline (:seconds 1)
-       (sb-thread:get-mutex lock)))))
+       (sb-thread:grab-mutex lock)))))
 
-(with-test (:name (:deadline :wait-on-semaphore) :skipped-on '(not (and :sb-thread (not :sb-lutex))))
+(with-test (:name (:deadline :wait-on-semaphore) :skipped-on '(not :sb-thread))
   (assert-timeout
    (let ((sem (sb-thread::make-semaphore :count 0)))
      (sb-sys:with-deadline (:seconds 1)
        (sb-thread::wait-on-semaphore sem)))))
 
-(with-test (:name (:deadline :join-thread) :skipped-on '(not (and :sb-thread (not :sb-lutex))))
+(with-test (:name (:deadline :join-thread) :skipped-on '(not :sb-thread))
   (assert-timeout
    (sb-sys:with-deadline (:seconds 1)
      (sb-thread:join-thread
-      (sb-thread:make-thread (lambda () (loop (sleep 1))))))))
+      (make-kill-thread (lambda () (loop (sleep 1))))))))
 
-(with-test (:name (:deadline :futex-wait-eintr) :skipped-on '(not (and :sb-thread (not :sb-lutex))))
+(with-test (:name (:deadline :futex-wait-eintr) :skipped-on '(not :sb-thread))
   (let ((lock (sb-thread:make-mutex))
         (waitp t))
-    (sb-thread:make-thread (lambda ()
-                             (sb-thread:get-mutex lock)
-                             (setf waitp nil)
-                             (sleep 5)))
+    (make-join-thread (lambda ()
+                        (sb-thread:grab-mutex lock)
+                        (setf waitp nil)
+                        (sleep 5)))
     (loop while waitp do (sleep 0.01))
-    (let ((thread (sb-thread:make-thread
+    (let ((thread (make-join-thread
                    (lambda ()
                      (let ((start (get-internal-real-time)))
                        (handler-case
                            (sb-sys:with-deadline (:seconds 1)
-                             (sb-thread:get-mutex lock))
+                             (sb-thread:grab-mutex lock))
                          (sb-sys:deadline-timeout (x)
                            (declare (ignore x))
                            (let ((end (get-internal-real-time)))