Fix tests and vector function predicates

This commit is contained in:
BirDt_ 2026-04-05 13:23:31 +08:00
parent 2991268ecb
commit 8dbf44a9f0
2 changed files with 10 additions and 10 deletions

View file

@ -64,7 +64,7 @@
(record? vec2)))
(assert (eq? (rtd-name (record-rtd vec1))
(rtd-name (record-rtd vec2))))
(assert (any (lambda (pred) (pred vec1)) '(vector2?)))
(assert (any (lambda (pred) (pred vec1)) (list vector2?)))
(cond
((vector2? vec1)
(and (= (vector-x vec1) (vector-x vec2))
@ -76,7 +76,7 @@
(record? vec2)))
(assert (eq? (rtd-name (record-rtd vec1))
(rtd-name (record-rtd vec2))))
(assert (any (lambda (pred) (pred vec1)) '(vector2?)))
(assert (any (lambda (pred) (pred vec1)) (list vector2?)))
(cond
((vector2? vec1)
(make-vector2 (+ (vector-x vec1) (vector-x vec2))
@ -88,7 +88,7 @@
(record? vec2)))
(assert (eq? (rtd-name (record-rtd vec1))
(rtd-name (record-rtd vec2))))
(assert (any (lambda (pred) (pred vec1)) '(vector2?)))
(assert (any (lambda (pred) (pred vec1)) (list vector2?)))
(cond
((vector2? vec1)
(make-vector2 (- (vector-x vec1) (vector-x vec2))
@ -100,7 +100,7 @@
(record? vec2)))
(assert (eq? (rtd-name (record-rtd vec1))
(rtd-name (record-rtd vec2))))
(assert (any (lambda (pred) (pred vec1)) '(vector2?)))
(assert (any (lambda (pred) (pred vec1)) (list vector2?)))
(cond
((vector2? vec1)
(make-vector2 (* (vector-x vec1) (vector-x vec2))
@ -112,7 +112,7 @@
(record? vec2)))
(assert (eq? (rtd-name (record-rtd vec1))
(rtd-name (record-rtd vec2))))
(assert (any (lambda (pred) (pred vec1)) '(vector2?)))
(assert (any (lambda (pred) (pred vec1)) (list vector2?)))
(cond
((vector2? vec1)
(make-vector2 (/ (vector-x vec1) (vector-x vec2))
@ -120,7 +120,7 @@
;; Magnitude
(define (vector-magnitude vec)
(assert (any (lambda (pred) (pred vec)) '(vector2?)))
(assert (any (lambda (pred) (pred vec)) (list vector2?)))
(cond
((vector2? vec)
(sqrt (+ (expt (vector-x vec) 2)
@ -128,7 +128,7 @@
;; Normalization
(define (vector-normalize vec)
(assert (any (lambda (pred) (pred vec)) '(vector2?))) ;; TODO: This assertion should be moved out of here
(assert (any (lambda (pred) (pred vec)) (list vector2?))) ;; TODO: This assertion should be moved out of here
(let ((magnitude (vector-magnitude vec)))
(cond
((vector2? vec)

View file

@ -18,7 +18,7 @@
(vector-* v2 (make-vector2 10 10))) => #t)
(check (vector-= (make-vector2 1 1)
(vector-/ v2 (make-vector2 10 10))) => #t)
(check (vector-magnitude (make-vector 100 0)) => 100)
(check (vector-= (make-vector 1 0)
(vector-normalize (make-vector 100 0))) => #t)
(check (vector-magnitude (make-vector2 100 0)) => 100)
(check (vector-= (make-vector2 1 0)
(vector-normalize (make-vector2 100 0))) => #t)
)