21 lines
No EOL
559 B
Common Lisp
21 lines
No EOL
559 B
Common Lisp
|
|
(in-package #:quasiquote-2.0-tests)
|
|
|
|
(in-suite quasiquote-2.0)
|
|
|
|
(enable-quasiquote-2.0)
|
|
|
|
(defmacro define-sample-macro (name args &body body)
|
|
`(defmacro ,name ,args
|
|
`(sample-thing-to-macroexpand-to
|
|
,,@body)))
|
|
|
|
(define-sample-macro sample-macro-1 (x y)
|
|
,x ,y)
|
|
|
|
(define-sample-macro sample-macro-2 (&body body)
|
|
,@body)
|
|
|
|
(test macro-defined-macroexpansions
|
|
(is (equal '(sample-thing-to-macroexpand-to a b) (macroexpand-1 '(sample-macro-1 a b))))
|
|
(is (equal '(sample-thing-to-macroexpand-to a b c) (macroexpand-1 '(sample-macro-2 a b c))))) |