#lang racket (require racket/runtime-path tests/eli-tester) (define-runtime-path lang "lang") (test (for ([p (in-list (directory-list lang))] #:when (regexp-match #rx"rkt$" (path->bytes p))) (define test-rkt (build-path lang p)) (define test-txt (build-path lang (path-replace-suffix p #".txt"))) (test #:failure-prefix (path->string p) (filter (lambda (l) (not (string=? l ""))) (with-input-from-string (with-output-to-string (lambda () (dynamic-require test-rkt #f))) port->lines)) => (filter (lambda (l) (not (string=? l ""))) (file->lines test-txt)))))