mlisp/stdlib/ut.lsp

37 lines
743 B
Common Lisp

(defun ut::assert-equal (value form) (do
(define fvalue (eval form))
(if (= value fvalue)
1
nil
)
))
(defun ut::assert-true (test)
(ut::assert-equal 1 test))
(defun ut::assert-false (test)
(ut::assert-equal nil test))
(defun ut::define-test (name exp_list)
(set! ut::tests_list (push ut::tests_list (list name exp_list))))
(defun ut::run-tests ()
(do
(for t ut::tests_list
(if (eval (index t 1))
(print (+ "OK -> " (index t 0)))
(print (+ "ERR -> " (index t 0))))
)))
(define ut::tests_list '())
; TODO (run-test name)
;; example of usage
;; (ut::define-test "je to dvojka" '(ut::assert-equal 2 (+ 1 1)))
;; (ut::define-test "je to trojka" '(ut::assert-equal 3 (+ 1 1)))
;; (ut::run-tests)