-
Notifications
You must be signed in to change notification settings - Fork 0
/
loam.asd
36 lines (35 loc) · 1.57 KB
/
loam.asd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
(asdf:defsystem "loam"
:description "loam"
:version "0.0.1"
:author "porcuquine <[email protected]>"
:licence "MIT"
:depends-on ("fiveam" "unix-opts" "uiop" "ironclad" "clsql" "clsql-sqlite3" "defstar" "cl-dot" "hu.dwim.walker")
:components ((:module "base"
:serial t
:components ((:file "base")
(:file "macros")
(:file "util")))
(:module "loam"
:serial t
:depends-on ("base")
:components
((:file "package")
(:file "loam")
(:file "lattice")
(:file "datalog")
(:file "allocation")
(:file "evaluation")
(:file "data")
)))
:in-order-to ((asdf:test-op (asdf:load-op "loam")))
:perform (asdf:test-op (o c)
(flet ((run-suite (suite) (uiop:symbol-call :fiveam :run! suite)))
(let* ((suite-specs '((#:base-suite #:base)
(#:master-suite #:loam)))
(failed (loop for spec in suite-specs
for (name-spec package-spec) = spec
for suite = (find-symbol (string name-spec) (string package-spec))
unless (run-suite suite)
collect suite)))
(when failed
(error "Some tests failed: ~A." failed))))))