Add Travis CI configuration.
[cl-mock.git] / .travis.yml
diff --git a/.travis.yml b/.travis.yml
new file mode 100644 (file)
index 0000000..12f7473
--- /dev/null
@@ -0,0 +1,37 @@
+language: lisp
+
+env:
+  matrix:
+    - LISP=abcl
+    - LISP=allegro
+    - LISP=sbcl
+    - LISP=sbcl32
+    - LISP=ccl
+    - LISP=ccl32
+    - LISP=clisp
+    - LISP=clisp32
+    - LISP=cmucl
+    - LISP=ecl
+
+matrix:
+  allow_failures:
+    # CIM not available for CMUCL
+    - env: LISP=cmucl
+    # optima fails for ecl
+    - env: LISP=ecl
+
+install:
+  - curl https://raw.githubusercontent.com/luismbo/cl-travis/master/install.sh | sh
+
+script:
+  # work around fiveam
+  - cl -e '(ql:quickload :cl-mock-tests-basic)
+           (unless (let ((results (fiveam:run (find-symbol "CL-MOCK" "CL-MOCK-TESTS"))))
+                     (fiveam:explain! results)
+                     (notany (function fiveam::test-failure-p) results))
+             (uiop:quit 1))'
+  - cl -e '(ql:quickload :cl-mock-tests)
+           (unless (let ((results (fiveam:run (find-symbol "CL-MOCK" "CL-MOCK-TESTS"))))
+                     (fiveam:explain! results)
+                     (notany (function fiveam::test-failure-p) results))
+             (uiop:quit 1))'