aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAryadev Chavali <aryadev@aryadevchavali.com>2025-02-24 23:38:03 +0000
committerAryadev Chavali <aryadev@aryadevchavali.com>2025-02-24 23:38:03 +0000
commit7c7bbd336175afb4fb2ff61d47b98e16b18c7ac9 (patch)
tree5dfce567b5e3c8c6f97f6345d89ac429ca58634d /tests
parentaa2fa546745518c8c9119d7f0c10353f8d70abc1 (diff)
downloadcantedraw-7c7bbd336175afb4fb2ff61d47b98e16b18c7ac9.tar.gz
cantedraw-7c7bbd336175afb4fb2ff61d47b98e16b18c7ac9.tar.bz2
cantedraw-7c7bbd336175afb4fb2ff61d47b98e16b18c7ac9.zip
Implement test for rank->int
Diffstat (limited to 'tests')
-rw-r--r--tests/model.lisp15
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))