#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)