aboutsummaryrefslogtreecommitdiff
path: root/compat-tests.el
diff options
context:
space:
mode:
authorDaniel Mendler <mail@daniel-mendler.de>2024-02-02 15:56:43 +0100
committerDaniel Mendler <mail@daniel-mendler.de>2024-02-02 16:01:17 +0100
commit31899a2a4d04335512a52f120087f699c00da693 (patch)
tree71d8730d31e7bd54bca0a77116939c6cea3d411e /compat-tests.el
parent980f58d26f3655863e35b7284c4df0513fa35f88 (diff)
compat-30: Add sort-on
Diffstat (limited to 'compat-tests.el')
-rw-r--r--compat-tests.el9
1 files changed, 9 insertions, 0 deletions
diff --git a/compat-tests.el b/compat-tests.el
index 8340d5f..71bcc08 100644
--- a/compat-tests.el
+++ b/compat-tests.el
@@ -1753,6 +1753,15 @@
(should-equal '(1 2 3 4) (flatten-tree '((1) nil 2 ((3 4)))))
(should-equal '(1 2 3 4) (flatten-tree '(((1 nil)) 2 (((3 nil nil) 4))))))
+(ert-deftest compat-sort-on ()
+ ;; TODO enable if CI emacs 30 supports sort-on
+ (static-if (< emacs-major-version 30)
+ (progn
+ (should-equal '(3 2 1) (sort-on '(2 1 3) #'> #'identity))
+ (should-equal '(1 2 3) (sort-on [2 1 3] #'< #'identity))
+ (should-equal '((1 z) (2 y) (3 x)) (sort-on (list '(2 y) '(1 z) '(3 x)) #'< #'car))
+ (should-equal '((x 3) (y 2) (z 1)) (sort-on (list '(y 2) '(z 1) '(x 3)) #'> #'cadr)))))
+
(ert-deftest compat-sort ()
(should-equal (list 1 2 3) (sort (list 1 2 3) #'<))
(should-equal (list 1 2 3) (sort (list 1 3 2) #'<))