;;;; cl-scopes/test/test-forge ;;;; testing facility for scopes/forge (defpackage :scopes/test-sf (:use :common-lisp) (:local-nicknames (:forge :scopes/forge/sf) (:util :scopes/util) (:t :scopes/testing)) (:export #:run) (:import-from :scopes/testing #:deftest #:==)) (in-package :scopes/test-sf) (defun run () (let ((t:*test-suite* (t:test-suite "forge/sf"))) (unwind-protect (progn ;(forge:setup-builtins) (test-exec) (test-def))) (util:lgi (forge:stack forge:*forge-env*)) (t:show-result))) (deftest test-exec () ;(forge:exec-str "4 2 add") (forge:exec-list '(4 2 add)) (== (forge:popd) 6) (forge:exec-list '( in square reg)) (forge:exec-list '(7 square)) (== (forge:popd) 49) (forge:exec-string "8 square") (== (forge:popd) 64)) (deftest test-def () (forge:exec-list '( in ") (forge:exec-list '(3 cube)) (== (forge:popd) 27)) (deftest test-val () (forge:exec-list '()))