Infrastructure pour les tests d'équivalence eval / mini-meval / squash-lisp-1 / squash-lisp-2 / squash-lisp-3

This commit is contained in:
Georges Dupéron 2011-01-08 22:52:53 +01:00
parent 05222c00c4
commit c25810fed5
2 changed files with 23 additions and 1 deletions

21
lisp/equiv-tests.lisp Normal file
View File

@ -0,0 +1,21 @@
(require 'squash-lisp "squash-lisp")
(require 'mini-meval "mini-meval")
(defun test-expr-in-all (expr)
(let ((res-eval (eval expr))
(sql nil))
(unless (equalp res-eval (mini-meval expr))
(return-from test-expr-in-all "mini-meval differs from-eval"))
(setq sql (squash-lisp-1 expr))
(unless (squash-lisp-1-check sql)
(return-from test-expr-in-all "squash-lisp-1-check failed"))
(unless (equalp res-eval (eval (squash-lisp-1-wrap sql)))
(return-from test-expr-in-all "squash-lisp-1 differs from-eval"))
;; (setq sql (squash-lisp-2 (squash-lisp-1 expr)))
;; (unless (squash-lisp-2-check sql)
;; (return-from test-expr-in-all "squash-lisp-2-check failed"))
;; (unless (equalp res-eval (eval (squash-lisp-2-wrap sql)))
;; (return-from test-expr-in-all "squash-lisp-2 differs from-eval"))
t))
(provide 'equiv-tests)

View File

@ -9,5 +9,6 @@
(load "match")
(load "mini-meval")
(load "squash-lisp")
(load "equiv-tests")
(provide 'main)
(provide 'main)