fixed test case issues

svn: r13557
This commit is contained in:
Robby Findler 2009-02-13 21:54:14 +00:00
parent b9560ae309
commit 1a0366061b

View File

@ -16,7 +16,12 @@
line))])) line))]))
(define check-expect-count 0) (define check-expect-count 0)
(define check-expects '())
(define (check-expect/proc actual-thunk expected-thunk line) (define (check-expect/proc actual-thunk expected-thunk line)
(set! check-expects
(cons
(λ ()
(set! check-expect-count (+ check-expect-count 1)) (set! check-expect-count (+ check-expect-count 1))
(let ([actual (actual-thunk)] (let ([actual (actual-thunk)]
[expected (expected-thunk)]) [expected (expected-thunk)])
@ -26,6 +31,11 @@
line line
actual actual
expected)))) expected))))
check-expects)))
(define (run-check-expects)
(for-each (λ (t) (t))
(reverse check-expects)))
(define (make-immutable-hash/list-init [init '()]) (define (make-immutable-hash/list-init [init '()])
(make-immutable-hash (make-immutable-hash
@ -45,7 +55,7 @@
;; a world is: ;; a world is:
;; (make-world board posn state number mouse posn-or-false boolean) ;; (make-world board posn state number mouse posn-or-false boolean)
(define-struct world (board cat state size mouse-posn h-down?)) (define-struct world (board cat state size mouse-posn h-down?) #:transparent)
;; a state is either: ;; a state is either:
;; - 'playing ;; - 'playing
@ -59,7 +69,7 @@
;; (make-cell (make-posn int[0-board-size] ;; (make-cell (make-posn int[0-board-size]
;; int[0-board-size]) ;; int[0-board-size])
;; boolean) ;; boolean)
(define-struct cell (p blocked?)) (define-struct cell (p blocked?) #:transparent)
; ;
@ -87,14 +97,14 @@
;; a dist-cell is ;; a dist-cell is
;; - (make-dist-cell posn (number or '∞)) ;; - (make-dist-cell posn (number or '∞))
(define-struct dist-cell (p n)) (define-struct dist-cell (p n) #:transparent)
;; build-bfs-table : world (or/c 'boundary posn) -> distance-table ;; build-bfs-table : world (or/c 'boundary posn) -> distance-table
(define (build-bfs-table world init-point) (define (build-bfs-table world init-point)
(local [;; posn : posn (local [;; posn : posn
;; dist : number ;; dist : number
(define-struct queue-ent (posn dist)) (define-struct queue-ent (posn dist) #:transparent)
(define neighbors/w (neighbors world)) (define neighbors/w (neighbors world))
@ -123,7 +133,8 @@
;; same-sets? : (listof X) (listof X) -> boolean ;; same-sets? : (listof X) (listof X) -> boolean
(define (same-sets? l1 l2) (define (same-sets? l1 l2)
(and (andmap (lambda (e1) (member e1 l2)) l1) (and (andmap (lambda (e1) (member e1 l2)) l1)
(andmap (lambda (e2) (member e2 l1)) l2))) (andmap (lambda (e2) (member e2 l1)) l2)
#t))
(check-expect (same-sets? (list) (list)) true) (check-expect (same-sets? (list) (list)) true)
(check-expect (same-sets? (list) (list 1)) false) (check-expect (same-sets? (list) (list 1)) false)
@ -1656,4 +1667,6 @@
(on-redraw render-world) (on-redraw render-world)
(on-key-event change) (on-key-event change)
(on-mouse-event clack)))) (on-mouse-event clack))))
(run-check-expects)
] ]