aboutsummaryrefslogtreecommitdiff
path: root/test/tests.el
diff options
context:
space:
mode:
authorSean Allred <code@seanallred.com>2014-12-30 23:07:36 -0500
committerSean Allred <code@seanallred.com>2014-12-30 23:07:36 -0500
commit06f7059bffa517d63c72a0815ff0779cfe5e5ce2 (patch)
tree8e8ede788a52641ff0aa8c016793c851f980130c /test/tests.el
parent35b0883d3e551c5cbc4f416082957e977d6e03eb (diff)
Test sx-assoc-let according to functionality
See http://emacs.stackexchange.com/q/5915/2264 and #151 for more information. This patch tests for functional equivalence rather than symbolic equivalence. Symbolic equivalence would be far preferable, but it does not appear to be happening anytime soon -- perhaps when things settle down a bit for the authors :)
Diffstat (limited to 'test/tests.el')
-rw-r--r--test/tests.el28
1 files changed, 15 insertions, 13 deletions
diff --git a/test/tests.el b/test/tests.el
index cc58105..3c275fd 100644
--- a/test/tests.el
+++ b/test/tests.el
@@ -120,19 +120,21 @@
(ert-deftest macro-test--sx-assoc-let ()
"Tests macro expansion for `sx-assoc-let'"
- (should
- (equal `(progn (sx--ensure-site data)
- ,(macroexpand
- '(let-alist data .test)))
- (macroexpand
- '(sx-assoc-let data .test))))
- (should
- (equal `(progn (sx--ensure-site data)
- ,(macroexpand
- '(let-alist data
- (cons .test-one .test-two))))
- (macroexpand
- '(sx-assoc-let data (cons .test-one .test-two))))))
+ (let ((prototype '((test . nil) (test-one . 1) (test-two . 2)
+ (link . "http://meta.emacs.stackexchange.com/"))))
+ (let ((data (copy-tree prototype)))
+ (should
+ (null (let-alist data .site))))
+
+ (let ((data (copy-tree prototype)))
+ (should
+ (equal (sx-assoc-let data .site)
+ "meta.emacs")))
+
+ (let ((data (copy-tree prototype)))
+ (should
+ (equal (sx-assoc-let data (cons .test-one .test-two))
+ '(1 . 2))))))
(ert-deftest sx--user-@name ()
"Tests macro expansion for `sx-assoc-let'"