(load (merge-pathnames "quicklisp/setup.lisp" (user-homedir-pathname))) (let ((data-dir (or (uiop:getenv "PASSEPARTOUT_DATA_DIR") (namestring (truename "../"))))) (push (uiop:ensure-directory-pathname data-dir) asdf:*central-registry*) (setf (uiop:getenv "PASSEPARTOUT_DATA_DIR") data-dir)) (ql:quickload '(:fiveam :passepartout :passepartout/tui :passepartout/tests) :silent t) (format t "~%=== Initializing Skills ===~%") (passepartout:skill-initialize-all) (format t "~%=== Running ALL Test Suites ===~%") (dolist (suite-spec '(("PASSEPARTOUT-EMBEDDING-NATIVE-TESTS" "EMBEDDING-NATIVE-SUITE") ("PASSEPARTOUT-PROGRAMMING-REPL-TESTS" "REPL-SUITE") ("PASSEPARTOUT-TUI-TESTS" "TUI-SUITE") ("PASSEPARTOUT-SECURITY-DISPATCHER-TESTS" "DISPATCHER-SUITE") ("PASSEPARTOUT-GATEWAY-MESSAGING-TESTS" "MESSAGING-SUITE") ("PASSEPARTOUT-SECURITY-VAULT-TESTS" "VAULT-SUITE") ("PASSEPARTOUT-CONTEXT-TESTS" "CONTEXT-SUITE"))) (let ((pkg (find-package (first suite-spec)))) (when pkg (let ((suite-sym (find-symbol (second suite-spec) pkg))) (when suite-sym (format t "~&--- Suite: ~A ---~%" (first suite-spec)) (fiveam:run! suite-sym)))))) (format t "~%=== ALL TESTS COMPLETE ===~%")