diff --git a/ansi-tests/load-environment.lsp b/ansi-tests/load-environment.lsp
index 07cb2987fec674427f526a929dc4e02e32caa811..ffa736f77b2c442758a5f9aee3baf84d3942fa78 100644
--- a/ansi-tests/load-environment.lsp
+++ b/ansi-tests/load-environment.lsp
@@ -16,3 +16,4 @@
 (load "decode-universal-time.lsp")
 (load "encode-universal-time.lsp")
 (load "get-universal-time.lsp")
+(load "sleep.lsp")
diff --git a/ansi-tests/sleep.lsp b/ansi-tests/sleep.lsp
new file mode 100644
index 0000000000000000000000000000000000000000..91e591e6893cc8aec225d21fc1cd0959678a5f87
--- /dev/null
+++ b/ansi-tests/sleep.lsp
@@ -0,0 +1,75 @@
+;-*- Mode:     Lisp -*-
+;;;; Author:   Paul Dietz
+;;;; Created:  Sun May  8 19:53:39 2005
+;;;; Contains: Tests of SLEEP
+
+(in-package :cl-test)
+
+(deftest sleep.1
+  (sleep 0)
+  nil)
+
+(deftest sleep.2
+  (sleep 0.0s0)
+  nil)
+
+(deftest sleep.3
+  (sleep 0.0f0)
+  nil)
+
+(deftest sleep.4
+  (sleep 0.0d0)
+  nil)
+
+(deftest sleep.5
+  (sleep 0.0l0)
+  nil)
+
+(deftest sleep.6
+  (sleep 1.0f-8)
+  nil)
+
+(deftest sleep.7
+  (sleep 1/100)
+  nil)
+
+(deftest sleep.8
+  (sleep (/ internal-time-units-per-second))
+  nil)
+
+(deftest sleep.9
+  (sleep (/ 1000000000000000000000000000000))
+  nil)
+
+(deftest sleep.10
+  (sleep least-positive-short-float)
+  nil)
+
+(deftest sleep.11
+  (sleep least-positive-single-float)
+  nil)
+
+(deftest sleep.12
+  (sleep least-positive-double-float)
+  nil)
+
+(deftest sleep.13
+  (sleep least-positive-long-float)
+  nil)
+
+;;; Error cases
+
+(deftest sleep.error.1
+  (signals-error (sleep) program-error)
+  t)
+
+(deftest sleep.error.2
+  (signals-error (sleep 100 nil) program-error)
+  t)
+
+(deftest sleep.error.3
+  (check-type-error #'sleep #'(lambda (x) (and (realp x) (>= x 0))))
+  nil)
+
+
+