teachpacks/testing.ss
#lang scheme

(require "../lang/dracula.ss"
         (prefix-in htdp: test-engine/scheme-tests))

(provide (all-defined-out))

(defun generate-report ()
  (begin (htdp:run-tests)
         (htdp:display-results)
         't))

(define-syntax check-expect
  (lambda (stx)
    (syntax-case stx () 
      [(_ x ...)
       #`(begin
           #,(syntax/loc stx (htdp:check-expect x ...))
           'check-expect-finished)])))

(define-syntax check-within
  (lambda (stx)
    (syntax-case stx ()
      [(_ x ...)
       #`(begin
           #,(syntax/loc stx (htdp:check-within x ...))
           'check-within-finished)])))

(define-syntax check-error
  (lambda (stx)
    (syntax-case stx ()
      [(_ x ...)
       #`(begin
           #,(syntax/loc stx (htdp:check-error x ...))
           'check-error-finished)])))