diff options
| author | Aryadev Chavali <aryadev@aryadevchavali.com> | 2025-02-24 23:38:03 +0000 | 
|---|---|---|
| committer | Aryadev Chavali <aryadev@aryadevchavali.com> | 2025-02-24 23:38:03 +0000 | 
| commit | 7c7bbd336175afb4fb2ff61d47b98e16b18c7ac9 (patch) | |
| tree | 5dfce567b5e3c8c6f97f6345d89ac429ca58634d | |
| parent | aa2fa546745518c8c9119d7f0c10353f8d70abc1 (diff) | |
| download | cantedraw-7c7bbd336175afb4fb2ff61d47b98e16b18c7ac9.tar.gz cantedraw-7c7bbd336175afb4fb2ff61d47b98e16b18c7ac9.tar.bz2 cantedraw-7c7bbd336175afb4fb2ff61d47b98e16b18c7ac9.zip  | |
Implement test for rank->int
| -rw-r--r-- | tests/model.lisp | 15 | 
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/model.lisp b/tests/model.lisp index 76924ca..316e920 100644 --- a/tests/model.lisp +++ b/tests/model.lisp @@ -44,6 +44,21 @@                    (append (range 2 11))                    (mapcar (lambda (rank) (assoc rank mapping)))))))) +(define-test (model-test rank->int) +  :depends-on ((cantedraw/tests/macros ->>)) +  :compile-at :execute +  (fail (rank->int nil)) +  (fail (rank->int 1738)) +  (fail (rank->int "not a rank")) +  (fail (rank->int :still-not-a-rank)) +  ;; Prove ranks are mapped to unique positive integers +  (let ((res (->> (list :jack :queen :king :ace) +                  (append (range 2 11)) +                  (mapcar #'rank->int)))) +    (true (every #'integerp res)) +    (true (every #'(lambda (x) (<= 0 x)) res)) +    (is equal (length res) (length (remove-duplicates res))))) +  (define-test (model-test int->suit)    :depends-on ((cantedraw/tests/macros ->>)                 (cantedraw/tests/functions rev-map))  | 
