-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
57 lines (50 loc) · 1.78 KB
/
.travis.yml
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
language: lisp
sudo: required
env:
matrix:
- LISP=sbcl
# - LISP=sbcl32
- LISP=clisp
# - LISP=clisp32
matrix:
allow_failures:
# CIM not available for CMUCL
- env: LISP=cmucl
# issue #16
- env: LISP=allegro
# either use a local install.sh script or install it via curl. Feel
# free to simplify this section in your own .travis.yml file.
install:
- if [ -x ./install.sh ] && head -2 ./install.sh | grep '^# cl-travis' > /dev/null;
then
./install.sh;
else
curl https://raw.githubusercontent.com/luismbo/cl-travis/master/install.sh | sh;
fi
# this bit is just testing that travis correctly sets up ASDF to find
# systems placed somewhere within ~/lisp. You can remove this section
# in your own .travis.yml file.
before_script:
- echo "(defsystem :dummy-cl-travis-system)" > ~/lisp/dummy-cl-travis-system.asd
# this serves as an example of how to use the 'cl' script (provided by
# CIM) to test your Lisp project. Here, we're using the RT framework
# to do unit testing; other frameworks will have different ways of
# determining whether a test suite fails or succeeds.
script:
- cl -e '(ql:quickload :cl-travis-test)
(rtest:do-tests)
(unless (null (rtest:pending-tests))
(uiop:quit 1))'
- cl -e '(ql:quickload :cl-travis-test)
(pushnew :force-test-failure *features*)
(rtest:do-tests)
(unless (null (rtest:pending-tests))
(uiop:quit 1))';
[ $? -eq 1 ]
# testing (albeit not extensively) that, even when invoked directly,
# Lisps still have Quicklisp available.
- if [ "$LISP" = "sbcl" ]; then
sbcl --non-interactive
--eval '(format t "~%Quicklisp version ~a is available!~%"
(ql:client-version))';
fi