Create a unit test system
Setup cantedraw/tests with a test-system record, as well as linking it back to cantedraw so we can run test-system on cantedraw and run the tests. Using parachute, we can setup a suite of unit tests for each package. For each package in src/ or lib/ we'll write a separate unit test suite with tests for all the public exposing functionality. I've setup a main suite in cantedraw/tests/main which will depend on each of the unit test suites so we can run the tests all at once. Currently we have one test for the --> macro.
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
:author "Aryadev Chavali <aryadev@aryadevchavali.com>"
|
||||
:license "GPL-2"
|
||||
:depends-on (:alexandria)
|
||||
:in-order-to ((asdf:test-op (asdf:test-op :cantedraw/tests)))
|
||||
:components ((:file "packages")
|
||||
(:module "lib"
|
||||
:components
|
||||
@@ -17,6 +18,22 @@
|
||||
:build-pathname "bin/cantedraw"
|
||||
:entry-point "cantedraw.main:start")
|
||||
|
||||
(asdf:defsystem "cantedraw/tests"
|
||||
:author "Aryadev Chavali <aryadev@aryadevchavali.com>"
|
||||
:license "GPL-2"
|
||||
:depends-on (:cantedraw
|
||||
:parachute)
|
||||
:components ((:module "tests"
|
||||
:components
|
||||
((:file "macros")
|
||||
;; (:file "functions")
|
||||
;; (:file "model")
|
||||
;; (:file "player")
|
||||
;; (:file "game")
|
||||
(:file "main"))))
|
||||
:perform (test-op (op c) (uiop:symbol-call :parachute :test
|
||||
:cantedraw/tests/main)))
|
||||
|
||||
;; Compress image for smaller binary size.
|
||||
#+nil
|
||||
(defmethod asdf:perform ((o asdf:image-op) (c asdf:system))
|
||||
|
||||
Reference in New Issue
Block a user