source: trunk/abcl/abcl.asd @ 13924

Last change on this file since 13924 was 13924, checked in by Mark Evenson, 9 years ago

ansi-tests: DO-TESTS-MATCHING will run all case-insensitive matching tests.

An ASDF load of ANSI-INTERPRETED now loads the interpreted tests into
memory via an :around specialization.

Changes in ABCL.TEST.ANSI (aka ANSI-TESTS):

DO-TESTS-MATCHING implemented (cribbed from ABCL-TEST-LISP).

Refactored DEFPACKAGE forms out of ABCL-ANSI-TESTS code, creating
abcl-ansi.lisp to hold all other forms.

Import symbols from REGRESSION-TEST where it makes sense (list could
probably be larger; why not just use the package?)

  • Property svn:keywords set to Id
File size: 5.0 KB
Line 
1;;; -*- Mode: LISP; Syntax: COMMON-LISP -*-
2;;; $Id: abcl.asd 13924 2012-05-04 09:14:24Z mevenson $
3
4(require 'asdf)
5(in-package :asdf)
6
7;;; Wrapper for all ABCL ASDF definitions.
8(defsystem :abcl :version "0.6.0")
9
10;;;  Run via (asdf:operate 'asdf:test-op :abcl :force t)
11(defmethod perform ((o test-op) (c (eql (find-system :abcl))))
12  (load-system (find-system :abcl-test-lisp))
13  (operate 'test-op :abcl-test-lisp))
14
15;;; Test ABCL with the Lisp unit tests collected in "test/lisp/abcl"
16;;;
17;;; We guard with #+abcl for tests that other Lisps cannot load.  This
18;;; could be possibly be done at finer granularity in the files
19;;; themselves.
20(defsystem :abcl-test-lisp :version "1.2" :components
21     ((:module abcl-rt
22                     :pathname "test/lisp/abcl/" :serial t :components
23         ((:file "rt-package")
24                      (:file "rt")
25                      (:file "test-utilities")))
26      (:module package  :depends-on (abcl-rt)
27         :pathname "test/lisp/abcl/" :components
28         ((:file "package")))
29            (:module test :depends-on (package)
30         :pathname "test/lisp/abcl/" :components
31                     ((:file "utilities")
32                      (:file "compiler-tests")
33                      (:file "condition-tests")
34                      #+abcl
35                      (:file "class-file")
36                      #+abcl
37                      (:file "metaclass")
38                      #+abcl
39                      (:file "mop-tests-setup")
40                      #+abcl
41                      (:file "mop-tests" :depends-on
42                             ("mop-tests-setup"))
43                      (:file "file-system-tests")
44                      #+abcl
45                      (:file "jar-pathname" :depends-on
46                             ("utilities" "pathname-tests" "file-system-tests"))
47                      #+abcl
48                      (:file "url-pathname")
49                      (:file "math-tests" :depends-on
50                             ("compiler-tests"))
51                      (:file "misc-tests")
52                      (:file "latin1-tests")
53                      (:file "bugs" :depends-on
54                             ("file-system-tests"))
55                      (:file "wild-pathnames" :depends-on
56                             ("file-system-tests"))
57                      #+abcl
58                      (:file "weak-hash-tables")
59                      #+abcl
60                      (:file "zip")
61                      #+abcl
62                      (:file "pathname-tests" :depends-on
63                             ("utilities"))))))
64
65(defmethod perform ((o test-op) (c (eql (find-system 'abcl-test-lisp))))
66   "Invoke tests with (asdf:oos 'asdf:test-op :abcl-test-lisp)."
67   (funcall (intern (symbol-name 'run) :abcl.test.lisp)))
68
69(defsystem :ansi-interpreted
70  :version "1.2"
71  :description "Test ABCL with the interpreted ANSI tests" :components
72  ((:module ansi-tests :pathname "test/lisp/ansi/" :components
73            ((:file "packages")
74             (:file "abcl-ansi" :depends-on ("packages"))
75             (:file "parse-ansi-errors" :depends-on ("abcl-ansi"))))))
76(defmethod perform :before ((o test-op) (c (eql (find-system :ansi-interpreted))))
77  (load-system  :ansi-interpreted))
78
79(defmethod perform :after ((o load-op) (c (eql (find-system :ansi-interpreted))))
80  (funcall (intern (symbol-name 'load-tests) :abcl.test.ansi)))
81
82(defmethod perform ((o test-op) (c (eql (find-system :ansi-interpreted))))
83  (funcall (intern (symbol-name 'run) :abcl.test.ansi)
84     :compile-tests nil))
85
86
87(defsystem :ansi-compiled :version "1.2"
88           :description "Test ABCL with the compiled ANSI tests." :components
89           ((:module ansi-tests :pathname "test/lisp/ansi/" :components
90                     ((:file "packages")
91                      (:file "abcl-ansi" :depends-on ("packages"))
92                      (:file "parse-ansi-errors" :depends-on ("abcl-ansi"))))))
93
94(defmethod perform :before ((o test-op) (c (eql (find-system :ansi-compiled))))
95  (load-system :ansi-compiled))
96(defmethod perform ((o test-op) (c (eql (find-system :ansi-compiled))))
97  (funcall (intern (symbol-name 'run) :abcl.test.ansi)
98     :compile-tests t))
99
100(defsystem :cl-bench
101  :description "Test ABCL with CL-BENCH."
102  :components ((:module cl-bench-package :pathname "../cl-bench/"
103                        :components ((:file "defpackage")))
104               (:module cl-bench-wrapper :pathname "test/lisp/cl-bench/"
105                        :depends-on (cl-bench-package) :components
106                        ((:file "wrapper")))))
107(defmethod perform :before ((o test-op) (c (eql (find-system :cl-bench))))
108  (load-system :cl-bench))
109(defmethod perform ((o test-op) (c (eql (find-system :cl-bench))))
110  (funcall (intern (symbol-name 'run) :abcl.test.cl-bench)))
111 
112;;; Build ABCL from a Lisp.
113;;; aka the "Lisp-hosted build system"
114;;; Works for: abcl, sbcl, clisp, cmu, lispworks, allegro, openmcl
115(defsystem :build-abcl :components
116     ((:module build :pathname ""  :components
117         ((:file "build-abcl")
118          (:file "customizations" :depends-on ("build-abcl"))))))
119
120
121
Note: See TracBrowser for help on using the repository browser.