Skip to content
Snippets Groups Projects
Commit b10131e7 authored by pfdietz's avatar pfdietz
Browse files

Modifed define-modify-macro tests to ensure the modify macros are defined...

Modifed define-modify-macro tests to ensure the modify macros are defined before the subsequent forms are evaled.  The previous tests broke in systems that compiled everything before eval.
parent e59fbeb1
No related branches found
No related tags found
No related merge requests found
...@@ -6,61 +6,60 @@ ...@@ -6,61 +6,60 @@
(in-package :cl-test) (in-package :cl-test)
(deftest define-modify-macro.1 (deftest define-modify-macro.1
(let ((u '(p q r)) v) (values
(values (eval '(define-modify-macro dmm1-appendf (&rest args)
(define-modify-macro dmm1-appendf (&rest args) append "Append lists onto a list"))
append "Append lists onto a list") (eval
(setq v u) '(let ((u '(p q r)) v)
(dmm1-appendf u '(a b c d)) (list
(dmm1-appendf u ()) (setq v u)
(dmm1-appendf u '(e f g)) (dmm1-appendf u '(a b c d))
u (dmm1-appendf u ())
v)) (dmm1-appendf u '(e f g))
u
v))))
dmm1-appendf dmm1-appendf
(p q r) ((p q r)
(p q r a b c d) (p q r a b c d)
(p q r a b c d) (p q r a b c d)
(p q r a b c d e f g) (p q r a b c d e f g)
(p q r a b c d e f g) (p q r a b c d e f g)
(p q r)) (p q r)))
(deftest define-modify-macro.2 (deftest define-modify-macro.2
(let ((i 10)) (values
(values (eval '(define-modify-macro new-incf (&optional (delta 1)) +))
(define-modify-macro new-incf (&optional (delta 1)) +) (eval
(new-incf i) '(let ((i 10))
(new-incf i 100) (list
i)) (new-incf i)
(new-incf i 100)
i))))
new-incf new-incf
11 (11 111 111))
111
111)
(deftest define-modify-macro.3 (deftest define-modify-macro.3
(let ((a (vector 0 0 0 0 0)) (values
(i 1)) (eval '(define-modify-macro new-incf1 (&optional (delta 1)) +))
(values (eval
(define-modify-macro new-incf (&optional (delta 1)) +) '(let ((a (vector 0 0 0 0 0))
(new-incf (aref a (incf i))) (i 1))
a (list
i)) (new-incf1 (aref a (incf i)))
new-incf a
1 i))))
#(0 0 1 0 0) new-incf1
2) (1 #(0 0 1 0 0) 2))
(deftest define-modify-macro.4 (deftest define-modify-macro.4
(let ((a (vector 0 0 0 0 0)) (values
(i 1)) (eval '(define-modify-macro new-incf2 (&optional (delta 1)) +))
(values (eval
(define-modify-macro new-incf (&optional (delta 1)) +) '(let ((a (vector 0 0 0 0 0))
(new-incf (aref a (incf i)) (incf i)) (i 1))
a (list
i)) (new-incf2 (aref a (incf i)) (incf i))
new-incf a
3 i))))
#(0 0 3 0 0) new-incf2
3) (3 #(0 0 3 0 0) 3))
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment