Improve test suite for modern ASDF
[puri.git] / puri.asd
index 0e4ea9c52f9de44dd7f2b414e2629d4c5eea2800..eda4fafce9b82883e321618bd6125175bfc70b88 100644 (file)
--- a/puri.asd
+++ b/puri.asd
@@ -6,28 +6,20 @@
 (defpackage #:puri-system (:use #:cl #:asdf))
 (in-package #:puri-system)
 
-
 (defsystem puri
   :name "cl-puri"
   :maintainer "Kevin M. Rosenberg <kmr@debian.org>"
   :licence "GNU Lesser General Public License"
   :description "Portable Universal Resource Indentifier Library"
   :components
-  ((:file "src")))
-
-(defmethod perform ((o test-op) (c (eql (find-system 'puri))))
-  (oos 'load-op 'puri-tests)
-  (oos 'test-op 'puri-tests))
+  ((:file "src"))
+  :in-order-to ((test-op (test-op "puri/test"))))
 
-(defsystem puri-tests
-    :depends-on (:puri :ptester) 
+(defsystem puri/test
+    :depends-on (:ptester :puri)
     :components
-    ((:file "tests")))
-
-(defmethod perform ((o test-op) (c (eql (find-system 'puri-tests))))
-  (or (funcall (intern (symbol-name '#:do-tests)
-                      (find-package :puri-tests)))
-      (error "test-op failed")))
-
-(defmethod operation-done-p ((o test-op) (c (eql (find-system 'puri-tests))))
-  (values nil))
+    ((:file "tests"))
+    :perform (test-op (o s)
+                      (or (funcall (intern (symbol-name '#:do-tests)
+                                          (find-package '#:puri/test)))
+                          (error "test-op failed"))))