Commit Diff


commit - b8f65320ed3b18ed6ac4209a0bbd1a86948db907
commit + 751ebe7c2c2e21ce1e7fed21ff71bab45f22ba9b
blob - 712d6e11bf177adc361961be7d6f244cee018063
blob + 60c03a592deb689774906dce80c7aa6b2e50bd92
--- build.lisp
+++ build.lisp
@@ -13,10 +13,10 @@ exec sbcl --script "build.lisp"
 
 (ql:quickload :aoc)
 (loop for day from 1 to 25
-      do (handler-case
-             (asdf:load-system (format nil "aoc/day-~A" day))
-           (asdf:missing-component (c)
-             (declare (ignore c)))))
+      for system-name = (format nil "aoc/day-~A" day)
+      for system = (asdf:find-system system-name nil)
+      when system
+        do (ql:quickload system-name))
 (sb-ext:save-lisp-and-die "aoc"
                           :toplevel #'aoc:main
                           :executable t)
blob - d0383017de7bdd34a479c77ce4d3ee580e1c3fb8
blob + 01d12dd198dd8f67658b20001ad50bf6562fc294
--- t/all.lisp
+++ t/all.lisp
@@ -11,16 +11,14 @@
   (run-tests :package (format nil "AOC-TEST/DAY-~A" day)
              :run-contexts 'with-summary-context))
 
-;; TODO: the asdf:load-system might not be so great here
+;; TODO: the recursive asdf/ql stuff might not be so great here
 (defun test-all ()
   (run-tests :tests (nconc
                      (get-tests :package '#:aoc-test/utils)
                      (loop for day from 1 to 25
-                           for system = (format nil "aoc-test/day-~A" day)
-                           nconc (handler-case
-                                     (progn
-                                       (asdf:load-system system)
-                                       (get-tests :package (string-upcase system)))
-                                   (asdf:missing-component (c)
-                                     (declare (ignore c))))))
+                           for system-name = (format nil "aoc-test/day-~A" day)
+                           for system = (asdf:find-system system-name nil)
+                           when system
+                             do (ql:quickload system-name)
+                             and nconc (get-tests :package (string-upcase system-name))))
              :run-contexts 'with-summary-context))