-;; -*- lisp -*-
+;;;; -*- Mode: Lisp; indent-tabs-mode: nil -*-
-(defpackage :it.bese.FiveAM.system
- (:use :common-lisp
- :asdf))
+(defsystem :fiveam
+ :author "Edward Marco Baringer <mb@bese.it>"
+ :version #.(with-open-file (f (merge-pathnames "version.lisp-expr"
+ (or *compile-file-pathname*
+ *load-truename*)))
+ (read f))
+ :depends-on (:alexandria)
+ :pathname "src/"
+ :components ((:file "package")
+ (:file "utils" :depends-on ("package"))
+ (:file "check" :depends-on ("package" "utils"))
+ (:file "fixture" :depends-on ("package"))
+ (:file "classes" :depends-on ("package"))
+ (:file "random" :depends-on ("package" "check"))
+ (:file "test" :depends-on ("package" "fixture" "classes"))
+ (:file "explain" :depends-on ("package" "utils" "check" "classes" "random"))
+ (:file "suite" :depends-on ("package" "test" "classes"))
+ (:file "run" :depends-on ("package" "check" "classes" "test" "explain" "suite")))
+ :in-order-to ((test-op (load-op :fiveam-test)))
+ :perform (test-op :after (op c)
+ (funcall (intern (string '#:run!) :it.bese.fiveam)
+ :it.bese.fiveam)))
-(in-package :it.bese.FiveAM.system)
+(defsystem :fiveam-test
+ :author "Edward Marco Baringer <mb@bese.it>"
+ :depends-on (:fiveam)
+ :pathname "t/"
+ :components ((:file "suite")
+ (:file "tests" :depends-on ("suite"))))
-(defsystem :FiveAM
- :author "Edward Marco Baringer <mb@bese.it>"
- :properties ((:test-suite-name . :it.bese.fiveam))
- :components ((:static-file "fiveam.asd")
- (:module :src
- :components ((:file "check" :depends-on ("packages"))
- (:file "classes" :depends-on ("packages"))
- (:file "explain" :depends-on ("classes" "packages" "check"))
- (:file "fixture" :depends-on ("packages"))
- (:file "packages")
- (:file "run" :depends-on ("packages" "classes" "test" "suite" "check"))
- (:file "suite" :depends-on ("packages" "test" "classes"))
- (:file "random" :depends-on ("packages" "check"))
- (:file "test" :depends-on ("packages" "classes"))))
- (:module :t
- :components ((:file "suite")
- (:file "tests" :depends-on ("suite")))
- :depends-on (:src)))
- :depends-on (:arnesi))
-
-(defmethod asdf:perform ((op asdf:test-op) (system (eql (find-system :FiveAM))))
- (funcall (intern (string :run!) (string :it.bese.FiveAM)) :it.bese.FiveAM))
-
-;;;;@include "src/packages.lisp"
+;;;;@include "src/package.lisp"
;;;;@include "t/example.lisp"