Renamed files: constanten→constants, adt-positie→adt-position, adt-doolhof→adt-maze, adt-sleutel→adt-key, adt-tijdslimiet→adt-timer, adt-teken→adt-draw, adt-spel→adt-game. All message names, variables, comments, and tests converted to English. Also fixed counter location bug (time-label x/y were swapped). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
28 lines
845 B
Racket
28 lines
845 B
Racket
#lang r7rs
|
|
|
|
(define-library ()
|
|
(import (scheme base)
|
|
(scheme write)
|
|
(pp1 tests)
|
|
(snake-wpo adt-positie)
|
|
(snake-wpo adt-appel))
|
|
(export test)
|
|
(begin
|
|
|
|
(define (test-oefening-4)
|
|
;; We maken twee aparte positie-objecten die een verschillende y-oordinaat hebben
|
|
(define p1 (maak-positie 5 5))
|
|
(define p2 (maak-positie 10 5))
|
|
(define appel (maak-appel p1))
|
|
(check-eq? (appel 'positie) p1 "Verwacht dat de positie ingesteld is")
|
|
((appel 'positie!) p2)
|
|
(check-not-eq? (appel 'positie) p1 "Verwacht dat de positie aangepast is")
|
|
(check-eq? (appel 'positie) p2 "Verwacht dat de positie aangepast is"))
|
|
|
|
(define (test)
|
|
(run-test test-oefening-4 "Oefening 4"))))
|
|
|
|
;; Voor de test uit te voeren voer je onderstaande code uit in de REPL:
|
|
;;
|
|
;; (test)
|