a little better

svn: r15118
This commit is contained in:
Eli Barzilay 2009-06-08 14:48:15 +00:00
parent 6977ddde54
commit f08fb96f88

View File

@ -737,7 +737,6 @@ END-OF-TESTS
(define (read-all str reader [whole? #f]) (define (read-all str reader [whole? #f])
(define i (open-input-string str)) (define i (open-input-string str))
(port-count-lines! i)
(if whole? (if whole?
(reader i) (reader i)
(let loop () (let loop ()
@ -778,15 +777,18 @@ END-OF-TESTS
[ts (regexp-replace* #px"(?m:^;.*\r?\n)" ts "")] [ts (regexp-replace* #px"(?m:^;.*\r?\n)" ts "")]
;; split the tests ;; split the tests
[ts (regexp-split #px"(?:^|\r?\n)-+(?:$|\r?\n)" ts)]) [ts (regexp-split #px"(?:^|\r?\n)-+(?:$|\r?\n)" ts)])
(parameterize ([port-count-lines-enabled #t])
(for ([t ts] #:when (not (regexp-match? #px"^\\s*$" t))) (for ([t ts] #:when (not (regexp-match? #px"^\\s*$" t)))
(let ([m (or (regexp-match #px"^(.*)\n\\s*(-\\S+->)\\s*\n(.*)$" t) (let ([m (or (regexp-match #px"^(.*)\n\\s*(-\\S+->)\\s*\n(.*)$"
(regexp-match #px"^(.*\\S)\\s+(-\\S+->)\\s+(\\S.*)$" t))]) t)
(regexp-match #px"^(.*\\S)\\s+(-\\S+->)\\s+(\\S.*)$"
t))])
(if (not (and m (= 4 (length m)))) (if (not (and m (= 4 (length m))))
(error 'bad-test "~a" t) (error 'bad-test "~a" t)
(let-values ([(x y) (let-values ([(x y)
((string->tester (caddr m)) (cadr m) (cadddr m))]) ((string->tester (caddr m)) (cadr m) (cadddr m))])
(test #:failure-message (test #:failure-message
(format "bad result in\n ~a\n results:\n ~s != ~s\n" (format "bad result in\n ~a\n results:\n ~s != ~s"
(regexp-replace* #rx"\n" t "\n ") (regexp-replace* #rx"\n" t "\n ")
x y) x y)
(equal? x y))))))))) (equal? x y))))))))))