Я пытаюсь создать проект Common Lisp, используя инструкции, которые я нашел здесь: http://turtleware.eu/posts/Tutorial-Working-with-FiveAM.html. Я клонировал репозиторий и следовал инструкциям в документе, чтобы мой файл .asd
, мой файл package.lisp
и мои файлы tests/package.lisp
и tests/main.lisp
соответствовали инструкциям. Я запустил (asdf:test-system 'quasirpg)
и все работало нормально.
Я скопировал этот пример проекта в свою настоящую рабочую папку и выполнил поиск и замену, чтобы изменить все экземпляры quasirpg
на foo
. Я запустил (asdf:test-system 'foo)
, и REPL дал мне ошибку, что пакет «FOO-TESTS» не может быть найден.
Теперь я перезапустил (asdf:test-system 'quasirpg)
, который работал раньше, и REPL выдает мне ту же ошибку, что пакет "QUASIRPG-TESTS" не может быть найден.
Кто-нибудь может объяснить, пожалуйста, что здесь происходит и как я могу заставить моего asdf
менеджера пакетов найти тестовые пакеты?
Thank you.
;;;; foo.asd
(asdf:defsystem #:foo
:description "Part of the FiveAM tutorial"
:author "Tomek 'uint' Kurcz"
:license "GPLv3"
:serial t
:components ((:file "package")
(:file "foo"))
:in-order-to ((test-op (test-op "foo/tests"))))
(asdf:defsystem #:foo/tests
:depends-on (:foo :fiveam)
:components ((:module "tests"
:serial t
:components ((:file "package")
(:file "main"))))
:perform (test-op (o s)
(uiop:symbol-call :fiveam :run! 'foo-tests:all-tests)))
;;;; tests/package.lisp
(defpackage #:foo-tests
(:use :cl :fiveam)
(:export #:run! #:all-tests))
;;;; tests/main.lisp
(in-package #:foo-tests)
(def-suite all-tests
:description "The master suite of all foo tests.")
;; tests continue below