build.xml's target 'abcl.test' invokes the GCL ANSI-TEST interpreted tests by default.

In order for these tests to work, you will need a sibling directory of
'abcl' called 'ansi-tests' which contains the GCL ANSI-TEST suite from
<svn://common-lisp.net/project/ansi-test/svn/trunk/ansi-tests>.
parent 0d16e5b8
......@@ -10,22 +10,40 @@
:documentation "Wrapper for all ABCL ASDF definitions."
:version "0.2.0")
(defmethod perform :after ((o load-op) (c (eql (find-system 'abcl))))
(defmethod perform :around ((o load-op) (c (eql (find-system 'abcl))))
(call-next-method)
(format t "DEBUG: load-op around :abcl.~%")
(asdf:oos 'asdf:load-op :test-abcl))
(defmethod perform ((o test-op) (c (eql (find-system 'abcl))))
(format t "DEBUG: test-op :abcl.~%")
(asdf:oos 'asdf:load-op :test-abcl :force t)
(asdf:oos 'asdf:test-op :ansi-test-compiled :force t))
(defsystem :test-abcl
:documentation "A collection of test suites for ABCL."
:version "0.3"
:components
:depends-on (:ansi-test-compiled :ansi-test-interpreted))
(defmethod perform :after ((o test-op) (c (eql (find-system 'test-abcl))))
(asdf:oos 'asdf:load-op :ansi-test-interpreted :force t)
(asdf:oos 'asdf:load-op :ansi-test-compiled :force t))
(defsystem :ansi-test :version "0.1" :components
((:module ansi-tests :pathname "test/lisp/ansi/"
:documentation "GCL ANSI test suite"
:documentation "GCL ANSI test suite."
:components
((:file "package")))))
(defsystem :ansi-test-interpreted :version "0,1" :depends-on (ansi-test))
(defsystem :ansi-test-compiled :version "0.1" :depends-on (ansi-test))
(defmethod perform ((o test-op) (c (eql (find-system 'abcl))))
"Invoke tests with: (asdf:oos 'asdf:test-op :test-abcl)."
(funcall (intern (symbol-name 'run-ansi-tests)
:abcl.tests.ansi-tests)))
(defmethod perform ((o test-op) (c (eql (find-system 'ansi-test-interpreted))))
(funcall (intern (symbol-name 'run) :abcl.tests.ansi-tests)
:compile-tests nil))
(defmethod perform ((o test-op) (c (eql (find-system 'ansi-test-compiled))))
(funcall (intern (symbol-name 'run) :abcl.tests.ansi-tests)
:compile-tests t))
;;; Works for: abcl, sbcl, clisp
(defsystem :build-abcl
......
......@@ -462,7 +462,7 @@
classname="org.armedbear.lisp.Main">
<arg value="--noinit"/>
<arg value="--load"/>
<arg value="scripts/ansi-tests-interpreted.lisp "/>
<arg value="${basedir}/scripts/ansi-tests-interpreted.lisp "/>
</java>
</target>
......@@ -472,7 +472,7 @@
classname="org.armedbear.lisp.Main">
<arg value="--noinit"/>
<arg value="--load"/>
<arg value="scripts/ansi-tests-compiled.lisp "/>
<arg value="${basedir}/scripts/ansi-tests-compiled.lisp "/>
</java>
</target>
......
......@@ -21,6 +21,7 @@ excludes=
file.reference.abcl-src=src
includes=org/armedbear/lisp/**/*.java,org/armedbear/lisp/**/*.lisp
jar.compress=true
javac.classpath=
# Space-separated list of extra javac options
javac.compilerargs=
javac.deprecation=false
......
(require 'asdf)
(asdf:oos 'asdf:load-op :abcl)
(abcl.tests.ansi-tests:run :compile-tests t)
(asdf:oos 'asdf:load-op :test-abcl)
(asdf:oos 'asdf:test-op :ansi-test-compiled :force t)
(ext:exit)
\ No newline at end of file
(require 'asdf)
(asdf:oos 'asdf:load-op :abcl)
(asdf:oos 'asdf:test-op :abcl :force t)
(ext:exit)
\ No newline at end of file
(asdf:oos 'asdf:load-op :test-abcl)
(asdf:oos 'asdf:test-op :ansi-test-interpreted :force t)
(ext:exit)
......@@ -13,7 +13,7 @@
#p"../ansi-tests/"
(asdf:component-pathname (asdf:find-system :abcl))))
(defun run (&optional (compile-tests nil))
(defun run (&key (compile-tests nil))
"Run the ANSI-TESTS suite, found in *ANSI-TESTS-DIRECTORY*.
Possibly running the compiled version of the tests if COMPILE-TESTS is non-NIL."
(let ((original-pathname-defaults *default-pathname-defaults*)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment