1;; 2;; Quick check for scripts. 3;; 4;; Run this as 'gosh check-script <script-file> ...' 5;; 6 7(use gauche.test) 8(use file.util) 9 10(define (main args) 11 (if (null? (cdr args)) 12 (usage) 13 (begin 14 (test-start "scripts") 15 (dolist [f (cdr args)] 16 ;; Often, "." is not in *load-path* and relative pathname may be 17 ;; given without "./"... so we ensure relative path begins with "./". 18 (let1 p (if (absolute-path? f) 19 f 20 ($ build-path "." 21 $ sys-normalize-pathname f :canonicalize #t)) 22 (test-script p))) 23 (test-end)))) 24 25(define (usage) 26 (print "Usage: gosh check-script <script-file> ...") 27 (print "Runs test-script function on each <script-file> to find out") 28 (print "undefined functions, call procedures with wrong number of arguments, etc.") 29 (exit 1)) 30 31;; Local variables: 32;; mode: scheme 33;; end: 34