started on raco integration

This commit is contained in:
Spencer Florence 2014-12-28 13:07:59 -06:00
parent 003caa95b6
commit ca1a74acd7
2 changed files with 31 additions and 0 deletions

View File

@ -2,3 +2,6 @@
(define name "better-test")
(define build-deps '("rackunit-lib"))
(define deps '("base" "errortrace-lib"))
(define raco-commands
'(("better-test" (submod better-test/raco main) "a better testing library" 100)))

28
raco.rkt Normal file
View File

@ -0,0 +1,28 @@
#lang racket
(require raco/command-name "main.rkt")
(module+ main
(define files
(expand-directories
(command-line
#:program (short-program+command-name)
#:args files files)))
(apply test-files! files))
;; TODO allow for arbitrary extensions
(define extensions '(#rx".rkt$" #rx".ss$"))
(define (expand-directories files)
(flatten
(for/list ([f files])
(if (not (directory-exists? f))
f
(expand-directory f)))))
(define (expand-directory d)
(for/list ([p (directory-list d)])
(cond [(directory-exists? p)
(parameterize ([current-directory (build-path (current-directory) p)])
(expand-directory "."))]
[(ormap (lambda (r) (regexp-match r (path->string p))) extensions)
(path->string (build-path (current-directory) p))]
[else (displayln " is bad file") null])))