racket/collects/tests/eopl/chapter2/utils.scm
2012-02-24 14:46:17 -05:00

20 lines
491 B
Scheme
Executable File

(module utils (lib "eopl.ss" "eopl")
;; a very simple macro for inline testing
(provide equal?? report-unit-tests-completed)
;; simple-minded magic for tests
(define-syntax equal??
(syntax-rules ()
((_ x y)
(let ((x^ x) (y^ y))
(if (not (equal? x y))
(eopl:error 'equal??
"~s is not equal to ~s" 'x 'y))))))
(define report-unit-tests-completed
(lambda (fn-name)
(eopl:printf "unit tests completed: ~s~%" fn-name)))
)