branch: externals/dash
commit 7d62b1a12780525bc839dec85d28aabf29003f2b
Author: Fredrik Bergroth <[email protected]>
Commit: Fredrik Bergroth <[email protected]>

    Make test suite independent of dash
---
 dev/examples-to-tests.el |   26 +++++++++++++++-----------
 1 files changed, 15 insertions(+), 11 deletions(-)

diff --git a/dev/examples-to-tests.el b/dev/examples-to-tests.el
index 70c5ae7..49d6649 100644
--- a/dev/examples-to-tests.el
+++ b/dev/examples-to-tests.el
@@ -1,18 +1,22 @@
 (require 'ert)
-(require 'dash)
-(require 'dash-functional)
 
-(defun example-to-should (example)
-  (-let [(actual sym expected) example]
-    (cond
-     ((eq sym '=>)
-      `(should (equal ,actual ,expected)))
-     ((eq sym '!!>)
-      `(should-error (eval ',actual) :type ',expected)))))
+(defun example-to-should (actual sym expected)
+  (cond ((eq sym '=>)
+         `(should (equal ,actual ,expected)))
+        ((eq sym '!!>)
+         `(should-error (eval ',actual) :type ',expected))
+        (t
+         (error "invalid test case: %S" `(,actual ,sym ,expected)))))
+
 
 (defmacro defexamples (cmd &rest examples)
-  `(ert-deftest ,cmd ()
-     ,@(-map 'example-to-should (-partition 3 examples))))
+  (let ((tests))
+    (while examples
+      (push (example-to-should (pop examples)
+                               (pop examples)
+                               (pop examples))
+            tests))
+    `(ert-deftest ,cmd () ,@(nreverse tests))))
 
 (defun def-example-group (&rest _)) ; ignore
 

Reply via email to