|
3033 | 3033 | (with-temp-buffer |
3034 | 3034 | (should-equal (take 3 (widget-create 'key)) '(key :value "")))) |
3035 | 3035 |
|
| 3036 | +(ert-deftest compat-drop-while () |
| 3037 | + (should (equal (drop-while #'hash-table-p nil) nil)) |
| 3038 | + (let ((ls (append '(3 2 1) '(0) '(-1 -2 -3)))) |
| 3039 | + (should (equal (drop-while #'plusp ls) '(0 -1 -2 -3))) |
| 3040 | + (should (equal (drop-while (lambda (x) (plusp x)) ls) '(0 -1 -2 -3))) |
| 3041 | + (let ((z 1)) |
| 3042 | + (should (equal (drop-while (lambda (x) (> x z)) ls) '(1 0 -1 -2 -3)))) |
| 3043 | + (should (equal (drop-while #'bufferp ls) ls)) |
| 3044 | + (should (equal (drop-while #'numberp ls) nil)) |
| 3045 | + (should (equal (funcall (identity #'drop-while) #'plusp ls) |
| 3046 | + '(0 -1 -2 -3))))) |
| 3047 | + |
| 3048 | +(ert-deftest compat-take-while () |
| 3049 | + (should (equal (take-while #'hash-table-p nil) nil)) |
| 3050 | + (let ((ls (append '(3 2 1) '(0) '(-1 -2 -3)))) |
| 3051 | + (should (equal (take-while #'plusp ls) '(3 2 1))) |
| 3052 | + (should (equal (take-while (lambda (x) (plusp x)) ls) '(3 2 1))) |
| 3053 | + (let ((z 1)) |
| 3054 | + (should (equal (take-while (lambda (x) (> x z)) ls) '(3 2)))) |
| 3055 | + (should (equal (take-while #'bufferp ls) nil)) |
| 3056 | + (should (equal (take-while #'numberp ls) ls)) |
| 3057 | + (should (equal (funcall (identity #'take-while) #'plusp ls) |
| 3058 | + '(3 2 1))))) |
| 3059 | + |
| 3060 | +(ert-deftest compat-all () |
| 3061 | + (should (equal (all #'hash-table-p nil) t)) |
| 3062 | + (let ((ls (append '(3 2 1) '(0) '(-1 -2 -3)))) |
| 3063 | + (should (equal (all #'numberp ls) t)) |
| 3064 | + (should (equal (all (lambda (x) (numberp x)) ls) t)) |
| 3065 | + (should (equal (all #'plusp ls) nil)) |
| 3066 | + (should (equal (all #'bufferp ls) nil)) |
| 3067 | + (let ((z 9)) |
| 3068 | + (should (equal (all (lambda (x) (< x z)) ls) t)) |
| 3069 | + (should (equal (all (lambda (x) (> x (- z 9))) ls) nil)) |
| 3070 | + (should (equal (all (lambda (x) (> x z)) ls) nil))) |
| 3071 | + (should (equal (funcall (identity #'all) #'plusp ls) nil)) |
| 3072 | + (should (equal (funcall (identity #'all) #'numberp ls) t)))) |
| 3073 | + |
| 3074 | +(ert-deftest compat-any () |
| 3075 | + (should (equal (any #'hash-table-p nil) nil)) |
| 3076 | + (let ((ls (append '(3 2 1) '(0) '(-1 -2 -3)))) |
| 3077 | + (should (equal (any #'numberp ls) ls)) |
| 3078 | + (should (equal (any (lambda (x) (numberp x)) ls) ls)) |
| 3079 | + (should (equal (any #'plusp ls) ls)) |
| 3080 | + (should (equal (any #'zerop ls) '(0 -1 -2 -3))) |
| 3081 | + (should (equal (any #'bufferp ls) nil)) |
| 3082 | + (let ((z 9)) |
| 3083 | + (should (equal (any (lambda (x) (< x z)) ls) ls)) |
| 3084 | + (should (equal (any (lambda (x) (< x (- z 9))) ls) '(-1 -2 -3))) |
| 3085 | + (should (equal (any (lambda (x) (> x z)) ls) nil))) |
| 3086 | + (should (equal (funcall (identity #'any) #'minusp ls) '(-1 -2 -3))) |
| 3087 | + (should (equal (funcall (identity #'any) #'stringp ls) nil)))) |
| 3088 | + |
3036 | 3089 | (ert-deftest compat-hash-table-contains-p () |
3037 | 3090 | (let ((h (make-hash-table :test #'equal))) |
3038 | 3091 | (puthash :foo t h) |
|
0 commit comments