view testfw.lisp @ 3:83743e601985 default tip

Add new lisp files
author Lewin Bormann <lbo@spheniscida.de>
date Sun, 13 Oct 2019 14:00:24 +0200
parents
children
line wrap: on
line source


(defun report-result (name result form)
  (format t "~a : ~:[FAIL~;pass~] ~a~%" name result form)
  result)

(defmacro strict-and (&rest cases)
  `(let ((evaluated (list ,@cases)))
     (and evaluated)))

(defmacro run-tests (name &rest cases)
  `(strict-and ,@(loop for case in cases collect
	     `(report-result ,name ,case (quote ,case)))))

(format t "~%")
(run-tests '+-tests
	   (eq 2 (+ 1 2))
	   (eq 5 (+ 2 3))
	   )