renamed make-covered? symboles

This commit is contained in:
Spencer Florence 2015-01-11 20:48:20 -05:00
parent c26277a151
commit 3c98384dec
7 changed files with 35 additions and 34 deletions

View File

@ -4,7 +4,7 @@
(define deps '("base" "errortrace-lib" "rackunit-lib" (define deps '("base" "errortrace-lib" "rackunit-lib"
"syntax-color-lib")) "syntax-color-lib"))
(define build-deps (define build-deps
'("racket-doc" "scribble-lib")) '("racket-doc" "scribble-lib" "typed-racket-doc"))
(define raco-commands (define raco-commands
'(("cover" (submod cover/raco main) "a code coverage tool" 30))) '(("cover" (submod cover/raco main) "a code coverage tool" 30)))

View File

@ -12,7 +12,7 @@
(-> file-coverage/c path-string? (-> file-coverage/c path-string?
(->* (exact-positive-integer?) (->* (exact-positive-integer?)
(#:byte? boolean?) (#:byte? boolean?)
(or/c 'yes 'no 'missing)))] (or/c 'covered 'uncovered 'irrelevant)))]
[generate-coveralls-coverage coverage-gen/c] [generate-coveralls-coverage coverage-gen/c]
[generate-html-coverage coverage-gen/c] [generate-html-coverage coverage-gen/c]
[generate-raw-coverage coverage-gen/c])) [generate-raw-coverage coverage-gen/c]))

View File

@ -120,20 +120,20 @@
(define file-coverage (hash-ref coverage file)) (define file-coverage (hash-ref coverage file))
(define (process-coverage value rst-of-line) (define (process-coverage value rst-of-line)
(case (covered? value) (case (covered? value)
['yes (if (equal? 'no rst-of-line) rst-of-line 'yes)] ['covered (if (equal? 'uncovered rst-of-line) rst-of-line 'covered)]
['no 'no] ['uncovered 'uncovered]
[else rst-of-line])) [else rst-of-line]))
(define (process-coverage-value value) (define (process-coverage-value value)
(case value (case value
['yes 1] ['covered 1]
['no 0] ['uncovered 0]
[else (json-null)])) [else (json-null)]))
(define-values (line-cover _) (define-values (line-cover _)
(for/fold ([coverage '()] [count 1]) ([line split-src]) (for/fold ([coverage '()] [count 1]) ([line split-src])
(cond [(zero? (string-length line)) (values (cons (json-null) coverage) (add1 count))] (cond [(zero? (string-length line)) (values (cons (json-null) coverage) (add1 count))]
[else (define nw-count (+ count (string-length line) 1)) [else (define nw-count (+ count (string-length line) 1))
(define all-covered (foldr process-coverage 'missing (range count nw-count))) (define all-covered (foldr process-coverage 'irrelevant (range count nw-count)))
(values (cons (process-coverage-value all-covered) coverage) nw-count)]))) (values (cons (process-coverage-value all-covered) coverage) nw-count)])))
(reverse line-cover)) (reverse line-cover))

View File

@ -18,7 +18,7 @@
;;;;; utils ;;;;; utils
;;; a Cover is (U 'yes 'no 'missing) ;;; a Cover is (U 'covered 'uncovered 'irrelevant)
;; [Hashof PathString [Hashof Natural Cover]] ;; [Hashof PathString [Hashof Natural Cover]]
@ -47,7 +47,7 @@
(define cache (define cache
(for/hash ([i (range 1 (add1 file-length))]) (for/hash ([i (range 1 (add1 file-length))])
(values i (values i
(cond [(irrelevant? i) 'missing] (cond [(irrelevant? i) 'irrelevant]
[else (raw-covered? i c)])))) [else (raw-covered? i c)]))))
cache))) cache)))
@ -113,9 +113,9 @@
(values m start) (values m start)
(values mode last-start))]))) (values mode last-start))])))
(case mode (case mode
[(#t) 'yes] [(#t) 'covered]
[(#f) 'no] [(#f) 'uncovered]
[else 'missing])) [else 'irrelevant]))
;; use for determining character/byte offsets for a given ;; use for determining character/byte offsets for a given
;; 1 indexed character location ;; 1 indexed character location
@ -146,14 +146,14 @@
(test-files! f) (test-files! f)
(define coverage (hash-ref (get-test-coverage) f)) (define coverage (hash-ref (get-test-coverage) f))
(define covered? (make-covered? coverage f)) (define covered? (make-covered? coverage f))
(check-equal? (covered? 14) 'missing) (check-equal? (covered? 14) 'irrelevant)
(check-equal? (covered? 14 #:byte? #t) 'missing) (check-equal? (covered? 14 #:byte? #t) 'irrelevant)
(check-equal? (covered? 17) 'missing) (check-equal? (covered? 17) 'irrelevant)
(check-equal? (covered? 28) 'missing) (check-equal? (covered? 28) 'irrelevant)
(check-equal? (covered? 35) 'yes) (check-equal? (covered? 35) 'covered)
(check-equal? (covered? 50) 'no) (check-equal? (covered? 50) 'uncovered)
(check-equal? (covered? 51 #:byte? #t) 'no) (check-equal? (covered? 51 #:byte? #t) 'uncovered)
(check-equal? (covered? 52) 'missing) (check-equal? (covered? 52) 'irrelevant)
(check-equal? (covered? 53) 'missing) (check-equal? (covered? 53) 'irrelevant)
(check-equal? (covered? 54) 'missing) (check-equal? (covered? 54) 'irrelevant)
(clear-coverage!))) (clear-coverage!)))

View File

@ -175,9 +175,9 @@
(define (mode-xml mode body) (define (mode-xml mode body)
(define class (define class
(case mode (case mode
[(yes) "covered"] [(covered) "covered"]
[(no) "uncovered"] [(uncovered) "uncovered"]
[(missing) "missing"])) [(irrelevant) "irrelevant"]))
`(span ((class ,class)) ,body)) `(span ((class ,class)) ,body))
(module+ test (module+ test
@ -198,7 +198,7 @@
,@(for/list ([l (rest (string-split (file->string f) "\n"))]) ,@(for/list ([l (rest (string-split (file->string f) "\n"))])
`(li () `(li ()
,@(for/list ([c l]) ,@(for/list ([c l])
`(span ((class ,(if (equal? c #\space) "missing" "covered"))) `(span ((class ,(if (equal? c #\space) "irrelevant" "covered")))
,(encode-char c)))))))) ,(encode-char c))))))))
@ -247,10 +247,10 @@
(values (e->n e) (a->n e))) (values (e->n e) (a->n e)))
(define (a->n e) (define (a->n e)
(case (is-covered? e) (case (is-covered? e)
[(yes no) 1] [(covered uncovered) 1]
[else 0])) [else 0]))
(define (e->n e) (define (e->n e)
(if (eq? (is-covered? e) 'yes) 1 0)) (if (eq? (is-covered? e) 'covered) 1 0))
(define-values (covered count) (define-values (covered count)
(let recur ([e e]) (let recur ([e e])
(syntax-parse e (syntax-parse e

View File

@ -10,4 +10,4 @@
color:green; color:green;
} }
.missing {} .irrelevant {}

View File

@ -39,7 +39,7 @@ Test coverage info is added to existing coverage info.}
@defproc[(make-covered? (coverage file-coverage/c) (path path-string?)) @defproc[(make-covered? (coverage file-coverage/c) (path path-string?))
(->* (exact-positive-integer?) (->* (exact-positive-integer?)
(#:byte? boolean?) (#:byte? boolean?)
(or/c 'yes 'no 'missing)) (or/c 'covered 'uncovered 'irrelevant))
]{ ]{
Given some location in a file and the Given some location in a file and the
coverage information for that file @racket[make-covered?] returns coverage information for that file @racket[make-covered?] returns
@ -47,11 +47,12 @@ a functions that determines if some @racket[1] indexed character or byte locatio
in that file is covered. By default it checks character locations. in that file is covered. By default it checks character locations.
There are three possible results: There are three possible results:
@itemize[@item{@racket['missing] --- The location is not considered relevant to coverage information. @itemize[@item{@racket['irrelevant] --- The location is not considered relevant to coverage information.
It might be in a submodule or lexes (in the sense of that languages It is either not in the coverage information, is in a submodule, or lexes (in the sense of that languages
@racket[_color-lexer]) as a comment or whitespace.} @racket[_color-lexer]) as a comment or whitespace.}
@item{@racket['yes] --- The location is not @racket['missing] and is @item{@racket['covered] --- The location is not @racket['irrelevant] and is
covered} @item{@racket['no] --- The location is not @racket['missing] covered}
@item{@racket['uncovered] --- The location is not @racket['uncovered]
and is not covered}] and is not covered}]
} }