summaryrefslogtreecommitdiff
path: root/deprecated-cl/tests,table.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'deprecated-cl/tests,table.lisp')
-rw-r--r--deprecated-cl/tests,table.lisp31
1 files changed, 31 insertions, 0 deletions
diff --git a/deprecated-cl/tests,table.lisp b/deprecated-cl/tests,table.lisp
new file mode 100644
index 0000000..33d4e86
--- /dev/null
+++ b/deprecated-cl/tests,table.lisp
@@ -0,0 +1,31 @@
+(defpackage lizfcm/tests.table
+ (:use :cl
+ :fiveam
+ :lizfcm.utils
+ :lizfcm/tests)
+ (:export :approx-suite))
+(in-package :lizfcm/tests.table)
+
+(def-suite table-suite
+ :in lizfcm-test-suite)
+(in-suite table-suite)
+
+(defun fib (n)
+ (cond ((< n 2) n)
+ (t (+ (fib (- n 1)) (fib (- n 2))))))
+
+(test table-of-fib-vals
+ :description "table generates correctly"
+ (let* ((headers '("n" "fib(n)"))
+ (n-values '((1) (2) (3) (4)))
+ (expected `(("n" "fib(n)")
+ (1 ,(fib 1))
+ (2 ,(fib 2))
+ (3 ,(fib 3))
+ (4 ,(fib 4))))
+ (tabled (lizfcm.utils:table (:headers headers
+ :domain-order (n)
+ :domain-values n-values)
+ (fib n))))
+ (is (equal expected tabled))))
+