Add package tests.
authorOlof-Joachim Frahm <olof@macrolet.net>
Sat, 18 May 2013 00:30:10 +0000 (02:30 +0200)
committerOlof-Joachim Frahm <olof@macrolet.net>
Sat, 18 May 2013 00:30:10 +0000 (02:30 +0200)
tests/package.lisp [new file with mode: 0644]

diff --git a/tests/package.lisp b/tests/package.lisp
new file mode 100644 (file)
index 0000000..814057b
--- /dev/null
@@ -0,0 +1,25 @@
+(test (not (eq (list-all-packages) (list-all-packages))))
+
+(test (equal (multiple-value-list (do-symbols (symbol *package* (values 1 2)))) '(1 2)))
+
+(test
+ (let ((package (make-package 'foo :use '(cl)))
+       foo-symbols
+       cl-symbols)
+   (do-symbols (symbol package)
+     (push symbol foo-symbols))
+   (do-external-symbols (symbol 'cl)
+     (push symbol cl-symbols))
+   (and (not (null foo-symbols))
+        (equal foo-symbols cl-symbols))))
+
+(test
+ (let* ((package (make-package 'bar))
+        (baz (intern (string 'baz) package)))
+   (let (symbols)
+     (do-all-symbols (symbol)
+       (push symbol symbols))
+     (and (member 'car symbols)
+          (member baz symbols)))))
+
+(test (member 'car (find-all-symbols (string 'car))))