emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/compat 55ab0bec7f 12/13: Restore alist tests


From: ELPA Syncer
Subject: [elpa] externals/compat 55ab0bec7f 12/13: Restore alist tests
Date: Wed, 4 Jan 2023 09:57:31 -0500 (EST)

branch: externals/compat
commit 55ab0bec7fa7e770362cd15ade861e4719284cec
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>

    Restore alist tests
---
 compat-tests.el | 58 ++++++++++++++++++++++++++++-----------------------------
 1 file changed, 28 insertions(+), 30 deletions(-)

diff --git a/compat-tests.el b/compat-tests.el
index ef283f052a..468b0949ef 100644
--- a/compat-tests.el
+++ b/compat-tests.el
@@ -1087,6 +1087,34 @@
                         ((lop (and (setq b (not b)) (1+ i)))))))
               'ok)))
 
+(ert-deftest alist-get ()
+  ;; Fallback behaviour:
+  (should-equal nil (alist-get 1 nil))                      ;empty list
+  (should-equal 'a (alist-get 1 '((1 . a))))                  ;single element 
list
+  (should-equal nil (alist-get 1 '(1)))
+  (should-equal 'b (alist-get 2 '((1 . a) (2 . b) (3 . c))))  ;multiple 
element list
+  (should-equal nil (alist-get 2 '(1 2 3)))
+  (should-equal 'b (alist-get 2 '(1 (2 . b) 3)))
+  (should-equal nil (alist-get 2 '((1 . a) 2 (3 . c))))
+  (should-equal 'a (alist-get 1 '((3 . c) (2 . b) (1 . a))))
+  (should-equal nil (alist-get "a" '(("a" . 1) ("b" . 2) ("c" . 3))))  
;non-primitive elements
+
+  ;; With testfn:
+  (should-equal 1 (compat-call alist-get "a" '(("a" . 1) ("b" . 2) ("c" . 3)) 
nil nil #'equal))
+  (should-equal 1 (compat-call alist-get 3 '((10 . 10) (4 . 4) (1 . 1) (9 . 
9)) nil nil #'<))
+  (should-equal '(a) (compat-call alist-get "b" '(("c" c) ("a" a) ("b" b)) nil 
nil #'string-lessp))
+  (should-equal 'c (compat-call alist-get "a" '(("a" . a) ("a" . b) ("b" . c)) 
nil nil
+                (lambda (s1 s2) (not (string= s1 s2)))))
+  (should-equal 'emacs-lisp-mode
+                (compat-call alist-get "file.el"
+                '(("\\.c\\'" . c-mode)
+                  ("\\.p\\'" . pascal-mode)
+                  ("\\.el\\'" . emacs-lisp-mode)
+                  ("\\.awk\\'" . awk-mode))
+                nil nil #'string-match-p))
+  (should-equal 'd (compat-call alist-get 0 '((1 . a) (2 . b) (3 . c)) 'd)) 
;default value
+  (should-equal 'd (compat-call alist-get 2 '((1 . a) (2 . b) (3 . c)) 'd nil 
#'ignore)))
+
 (ert-deftest alist-get-gv ()
   (let ((alist-1 (list (cons 1 "one")
                        (cons 2 "two")
@@ -1288,36 +1316,6 @@
 ;;                    ))
 ;;       (should-not (string-match-p unmatchable str)))))
 
-;; ;; (when (fboundp 'alist-get)
-;; ;;   (ert-deftest alist-get-1 ()
-;; ;;     (ert-deftest alist-get
-;; ;;       ;; Fallback behaviour:
-;; ;;       (should-equal nil 1 nil)                      ;empty list
-;; ;;       (should-equal 'a 1 '((1 . a)))                  ;single element 
list
-;; ;;       (should-equal nil 1 '(1))
-;; ;;       (should-equal 'b 2 '((1 . a) (2 . b) (3 . c)))  ;multiple element 
list
-;; ;;       (should-equal nil 2 '(1 2 3))
-;; ;;       (should-equal 'b 2 '(1 (2 . b) 3))
-;; ;;       (should-equal nil 2 '((1 . a) 2 (3 . c)))
-;; ;;       (should-equal 'a 1 '((3 . c) (2 . b) (1 . a)))
-;; ;;       (should-equal nil "a" '(("a" . 1) ("b" . 2) ("c" . 3)))  
;non-primitive elements
-
-;; ;;       ;; With testfn:
-;; ;;       (should-equal 1 "a" '(("a" . 1) ("b" . 2) ("c" . 3)) nil nil 
#'equal)
-;; ;;       (should-equal 1 3 '((10 . 10) (4 . 4) (1 . 1) (9 . 9)) nil nil #'<)
-;; ;;       (should-equal '(a) "b" '(("c" c) ("a" a) ("b" b)) nil nil 
#'string-lessp)
-;; ;;       (should-equal 'c "a" '(("a" . a) ("a" . b) ("b" . c)) nil nil
-;; ;;                        (lambda (s1 s2) (not (string= s1 s2))))
-;; ;;       (should-equal 'emacs-lisp-mode
-;; ;;                        "file.el"
-;; ;;                        '(("\\.c\\'" . c-mode)
-;; ;;                          ("\\.p\\'" . pascal-mode)
-;; ;;                          ("\\.el\\'" . emacs-lisp-mode)
-;; ;;                          ("\\.awk\\'" . awk-mode))
-;; ;;                        nil nil #'string-match-p)
-;; ;;       (should-equal 'd 0 '((1 . a) (2 . b) (3 . c)) 'd) ;default value
-;; ;;       (should-equal 'd 2 '((1 . a) (2 . b) (3 . c)) 'd nil #'ignore))))
-
 ;; (ert-deftest (alist-get compat--alist-get-full-elisp)
 ;;   ;; Fallback behaviour:
 ;;   (should-equal nil 1 nil)                      ;empty list



reply via email to

[Prev in Thread] Current Thread [Next in Thread]