File tree 8 files changed +129
-0
lines changed
8 files changed +129
-0
lines changed Original file line number Diff line number Diff line change
1
+ services :
2
+ - docker
3
+
4
+ script : make ci-check
Original file line number Diff line number Diff line change
1
+ LISP_FLAGS = --noinform --disable-debugger --load
2
+ LISP := sbcl $(LISP_FLAGS )
3
+ IMAGE = commonlispbr/emacs:sbcl
4
+
5
+ check :
6
+ @$(LISP ) run-tests.lisp
7
+
8
+ ci-check :
9
+ @docker run -t --entrypoint=/usr/bin/sbcl \
10
+ -v $(shell pwd) :/workspace \
11
+ --security-opt seccomp=unconfined \
12
+ $(IMAGE ) \
13
+ $(LISP_FLAGS ) \
14
+ run-tests.lisp
15
+ @docker run --entrypoint=/bin/rm -t \
16
+ -v $(shell pwd) :/workspace \
17
+ $(IMAGE) \
18
+ -rf system-index.txt
19
+
20
+ .PHONY : check
Original file line number Diff line number Diff line change
1
+ # ql-meta
2
+ ### _ Manoel Vilela_
3
+
4
+ This is a project to do ... something.
5
+
6
+ ## License
7
+
8
+ Specify license here
9
+
Original file line number Diff line number Diff line change
1
+ ; ;;; ql-meta.asd
2
+
3
+ (asdf :defsystem # :ql-meta
4
+ :description " QL-META tracks multiple Quicklisp distributions"
5
+ :author " Manoel Vilela & Lucas Vieira"
6
+ :license " MIT"
7
+ :version " 0.1.0"
8
+ :serial t
9
+ :pathname " src"
10
+ :depends-on (:quicklisp )
11
+ :components ((:file " package" )
12
+ (:file " ql-meta" )))
13
+
14
+ (asdf :defsystem # :ql-meta/test
15
+ :description " QL-META test suit"
16
+ :author " Manoel Vilela & Lucas Vieira"
17
+ :license " MIT"
18
+ :version " 0.1.0"
19
+ :serial t
20
+ :pathname " t"
21
+ :depends-on (:ql-meta :prove )
22
+ :components ((:file " test" ))
23
+ :perform (asdf :test-op :after (op c)
24
+ (funcall (intern #. (string :run ) :prove ) c)))
Original file line number Diff line number Diff line change
1
+ (ql :quickload ' (:prove ) :silent t )
2
+ (eval-when (:load-toplevel :execute )
3
+ (pushnew (truename (sb-unix :posix-getcwd/))
4
+ ql :*local-project-directories* )
5
+ (ql :register-local-projects)
6
+ (ql :quickload :ql-meta/test )
7
+ (setf prove :*enable-colors* t )
8
+ (if (prove :run " t/test.lisp" )
9
+ (sb-ext :exit :code 0 )
10
+ (sb-ext :exit :code 1 )))
Original file line number Diff line number Diff line change
1
+ ; ;;; package.lisp
2
+
3
+ (defpackage #:ql-meta
4
+ (:use # :cl # :quicklisp-client)
5
+ (:export :*dists*
6
+ :get-dists-names
7
+ :get-dists-urls ))
Original file line number Diff line number Diff line change
1
+ #|
2
+
3
+ Manoel Vilela & Lucas Vieira © 2019 MIT
4
+
5
+ Main usage should be defined as:
6
+
7
+ (ql:dist-apropos search-str)
8
+ (ql:subscribe dist-name)
9
+ (ql:unsubscribe dist-name)
10
+ (ql:purge dist-name)
11
+
12
+ |#
13
+
14
+ (in-package # :ql-meta)
15
+
16
+
17
+ (defparameter *dists*
18
+ ' ((cl-bodge (:url " http://bodge.borodust.org/dist/org.borodust.bodge.txt"
19
+ :replace t ))
20
+ (cl21 (:url " http://dists.cl21.org/cl21.txt" )))
21
+ " *DISTS* it's PLIST of distributions available in QL-META" )
22
+
23
+
24
+ (defun get-dists-urls (&optional (dists *dists* ))
25
+ " GET-DISTS-URLS return the urls defined in *DISTS*"
26
+ (loop for (key plist) in dists
27
+ collect (getf plist :url )))
28
+
29
+
30
+ (defun get-dists-names (&optional (dists *dists* ))
31
+ " GET-DISTS-NAMES return the urls defined in *DISTS*"
32
+ (loop for (key plist) in dists
33
+ collect key))
Original file line number Diff line number Diff line change
1
+ (defpackage #:ql-meta/test
2
+ (:use # :cl
3
+ # :ql-meta
4
+ # :prove))
5
+
6
+
7
+ (in-package :ql-meta/test )
8
+
9
+
10
+ (defparameter *dists-mock*
11
+ ' ((test1 (:url " http://test1.com" ))
12
+ (test2 (:url " http://test2.com" ))))
13
+
14
+ (plan nil )
15
+
16
+ (diag " == Sanity checks!" )
17
+
18
+ (is (get-dists-names *dists-mock* ) ' (test1 test2))
19
+ (is (get-dists-urls *dists-mock* ) ' (" http://test1.com"
20
+ " http://test2.com" ))
21
+
22
+ (finalize)
You can’t perform that action at this time.
0 commit comments