whalesong/test-browser-evaluate.rkt
2011-02-21 21:24:05 -05:00

29 lines
721 B
Racket

#lang racket
(require "browser-evaluate.rkt")
;; test-find-toplevel-variables
(define-syntax (test stx)
(syntax-case stx ()
[(_ s exp)
(with-syntax ([stx stx])
(syntax/loc #'stx
(let-values ([(output time) (evaluate s)])
(unless (string=? output exp)
(raise-syntax-error #f (format "Expected ~s, got ~s" exp output)
#'stx)))))]))
(test '(begin (define (f x)
(if (= x 0)
0
(+ x (f (- x 1)))))
(display (f 3))
(display "\n")
(display (f 4))
(display "\n")
(display (f 10000)))
"6\n10\n50005000")
"ok"