Add more tests

This commit is contained in:
Marcus Kammer 2025-01-05 14:47:04 +01:00
parent 3c7a097bf0
commit f74b63d436
Signed by: marcuskammer
GPG key ID: C374817BE285268F

View file

@ -5,7 +5,8 @@
(:import-from #:ml-qmetrics/assessment (:import-from #:ml-qmetrics/assessment
#:nps-calc-score #:nps-calc-score
#:nps-enumerate)) #:nps-enumerate
#:sus-response-entries-process))
(in-package :ml-qmetrics/tests) (in-package :ml-qmetrics/tests)
@ -18,7 +19,21 @@
(is (= 0 (apply #'nps-calc-score '(0 0 1))))) (is (= 0 (apply #'nps-calc-score '(0 0 1)))))
(test nps-enumerate (test nps-enumerate
(is (equal '(0 0 0) (nps-enumerate '(0 11)))) (is (equal '(0 1 1) (nps-enumerate '(0 11))))
(is (equal '(0 4 4) (nps-enumerate '(1 2 3 4)))) (is (equal '(0 4 4) (nps-enumerate '(1 2 3 4))))
(signals error (nps-enumerate 0)) (signals error (nps-enumerate 0))
(signals error (nps-enumerate '()))) (signals error (nps-enumerate '())))
(test sus-response-entries-process
(let ((sample-data '(("group-q1" . "3-neither-agree-nor-disagree")
("group-q2-r" . "4-agree")
("group-q3" . "5-strongly-agree")
("group-q4-r" . "1-strongly-disagree")
("group-q5" . "5-strongly-agree")
("group-q6-r" . "2-disagree")
("group-q7" . "3-neither-agree-nor-disagree")
("group-q8-r" . "3-neither-agree-nor-disagree")
("group-q9" . "4-agree")
("group-q10-r" . "2-disagree"))))
(is (equal '(:Q1 2 :Q2 1 :Q3 4 :Q4 4 :Q5 4 :Q6 3 :Q7 2 :Q8 2 :Q9 3 :Q10 3)
(sus-response-entries-process sample-data)))))