racket/collects/tests/stepper/language-level-model.rkt
Stephen Chang c41123ce6c existing lazy stepper tests passing
in tests/stepper/
test-engine.rkt
- add racket/private/promise to test-namespace using namespace-attach-module

automatic-tests.rkt
- add lazy tests

through-tests.rkt
- fix existing lazy tests lazy1, lazy2, lazy3

language-level-model.rkt
- fix lazy ll-model

in stepper/private/model-settings.rkt
- edit settings for lazy racket
2011-04-06 18:42:53 -04:00

65 lines
1.6 KiB
Racket

#lang racket/base
(require stepper/private/model-settings)
(provide (all-defined-out))
;; DEFINING A LANGUAGE FOR THE PURPOSES OF TESTING
;; ll-model : a representation of the behavior of a language level w.r.t. the stepper
(define-struct ll-model (namespace-spec render-settings enable-testing?))
;; the built-in ll-models:
(define mz
(make-ll-model 'mzscheme fake-mz-render-settings #f))
(define beginner
(make-ll-model `(lib "htdp-beginner.ss" "lang") fake-beginner-render-settings #t))
(define beginner-wla
(make-ll-model `(lib "htdp-beginner-abbr.ss" "lang") fake-beginner-wla-render-settings #t))
(define intermediate
(make-ll-model `(lib "htdp-intermediate.ss" "lang") fake-intermediate-render-settings #t))
(define intermediate-lambda
(make-ll-model `(lib "htdp-intermediate-lambda.ss" "lang") fake-intermediate/lambda-render-settings #t))
(define advanced
(make-ll-model `(lib "htdp-advanced.ss" "lang") fake-advanced-render-settings #t))
(define lazy
(make-ll-model `(lib "lazy.rkt" "lazy") fake-lazy-render-settings #f))
;; unsure about the render-settings, here:
(define dmda-a
(make-ll-model `(lib "DMdA-beginner.ss" "deinprogramm") fake-beginner-render-settings #t))
;; SUPPORT FOR TESTING A BUNCH OF LANGUAGES AT ONCE:
;; built-in multi-language bundles:
(define upto-int/lam
(list beginner
beginner-wla
intermediate
intermediate-lambda))
(define upto-int
(list beginner
beginner-wla
intermediate))
(define bwla-to-int/lam
(list beginner-wla
intermediate
intermediate-lambda))
(define both-intermediates
(list intermediate
intermediate-lambda))