r4869: *** empty log message ***
[hyperobject.git] / run-tests.lisp
diff --git a/run-tests.lisp b/run-tests.lisp
new file mode 100644 (file)
index 0000000..5dca9f5
--- /dev/null
@@ -0,0 +1,25 @@
+(defpackage #:run-tests (:use #:cl))
+(in-package #:run-tests)
+
+(require 'rt)
+(require 'kmrcl)
+
+(load "hyperobject.asd")
+(load "hyperobject-tests.asd")
+(asdf:oos 'asdf:test-op 'hyperobject)
+
+(defun quit (&optional (code 0))
+  "Function to exit the Lisp implementation. Copied from CLOCC's QUIT function."
+    #+allegro (excl:exit code)
+    #+clisp (#+lisp=cl ext:quit #-lisp=cl lisp:quit code)
+    #+(or cmu scl) (ext:quit code)
+    #+cormanlisp (win32:exitprocess code)
+    #+gcl (lisp:bye code)
+    #+lispworks (lw:quit :status code)
+    #+lucid (lcl:quit code)
+    #+sbcl (sb-ext:quit :unix-status (typecase code (number code) (null 0) (t 1)))
+    #+mcl (ccl:quit code)
+    #-(or allegro clisp cmu scl cormanlisp gcl lispworks lucid sbcl mcl)
+    (error 'not-implemented :proc (list 'quit code)))
+
+(quit)