https://github.com/wiseman/cl-difflib/pull/1

diff --git cl-difflib-tests.asd cl-difflib-tests.asd
index 03ed39d..7cc9c91 100644
--- cl-difflib-tests.asd
+++ cl-difflib-tests.asd
@@ -18,9 +18,7 @@
 
 (asdf:defsystem :cl-difflib-tests
     :depends-on (:cl-difflib)
-    :components ((:file "unit-tests")))
-
-(defmethod asdf:perform ((o asdf:test-op) (c (eql (find-system :cl-difflib-tests))))
-  (or (funcall (intern (symbol-name '#:run-tests)
-                       (find-package '#:difflib-test)))
-      (error "test-op failed")))
+    :components ((:file "unit-tests"))
+    :perform (test-op (o s)
+                      (unless (uiop:symbol-call :difflib-test '#:run-tests)
+                        (error "test-op failed"))))
diff --git cl-difflib.asd cl-difflib.asd
index 88ab74c..9389a56 100644
--- cl-difflib.asd
+++ cl-difflib.asd
@@ -22,12 +22,8 @@
     :description "A Lisp library for computing differences between sequences."
     :long-description "A Lisp library for computing differences between sequences.  Based on Python's difflib module."
     
+    :in-order-to ((test-op (test-op "cl-difflib-tests")))
     :components ((:file "package")
 		 (:file "difflib" :depends-on ("package"))
 		 (:static-file "LICENSE.txt")
 		 (:static-file "NEWS.txt")))
-
-
-(defmethod perform ((o test-op) (c (eql (find-system 'cl-difflib))))
-  (oos 'load-op 'cl-difflib-tests)
-  (oos 'test-op 'cl-difflib-tests :force t))
\ No newline at end of file
diff --git unit-tests.lisp unit-tests.lisp
index 6a9ee41..23fbb04 100644
--- unit-tests.lisp
+++ unit-tests.lisp
@@ -99,7 +99,8 @@
 	(test-similarity-ratio)
 	(test-close-matches)
 	(test-unified-diff)
-	(test-context-diff))
+	(test-context-diff)
+        (null *failed-tests*))
     (end-tests)))
 
 
