diff options
author | Dmitry Antipov <[email protected]> | 2014-05-15 18:59:02 +0400 |
---|---|---|
committer | Dmitry Antipov <[email protected]> | 2014-05-15 18:59:02 +0400 |
commit | ddc30c996a3d14e0163df6946ba96c9bcf73bd2f (patch) | |
tree | 6c0a2fafa8a124e0c6e12174321dc012226bb7a9 /test | |
parent | 92491099f710794ee2be60721fae50d68c5ca162 (diff) |
* src/fns.c (Fnreverse): Allow vectors and bool vectors.
* doc/lispref/lists.texi (Building Cons Cells and Lists): Remove
description of `nreverse' and generalize it...
* doc/lispref/sequences.texi (Sequences): ...for sequences here.
* tests/automated/fns-tests.el (fns-tests-nreverse)
(fns-tests-nreverse-bool-vector): New tests.
Diffstat (limited to 'test')
-rw-r--r-- | test/ChangeLog | 2 | ||||
-rw-r--r-- | test/automated/fns-tests.el | 32 |
2 files changed, 34 insertions, 0 deletions
diff --git a/test/ChangeLog b/test/ChangeLog index cd5398e9b9..3fed9759ca 100644 --- a/test/ChangeLog +++ b/test/ChangeLog @@ -1,6 +1,8 @@ 2014-05-15 Dmitry Antipov <[email protected]> * automated/fns-tests.el: New file. + * automated/fns-tests.el (fns-tests-nreverse) + (fns-tests-nreverse-bool-vector): New tests. 2014-05-08 Glenn Morris <[email protected]> diff --git a/test/automated/fns-tests.el b/test/automated/fns-tests.el index 2e71854261..577298cddf 100644 --- a/test/automated/fns-tests.el +++ b/test/automated/fns-tests.el @@ -28,12 +28,44 @@ (should-error (reverse)) (should-error (reverse 1)) (should-error (reverse (make-char-table 'foo))) + (should (equal [] (reverse []))) + (should (equal [0] (reverse [0]))) (should (equal [1 2 3 4] (reverse (reverse [1 2 3 4])))) + (should (equal '(a b c d) (reverse (reverse '(a b c d))))) (should (equal "xyzzy" (reverse (reverse "xyzzy")))) (should (equal "こんにちは / コンニチハ" (reverse (reverse "こんにちは / コンニチハ"))))) +(ert-deftest fns-tests-nreverse () + (should-error (nreverse)) + (should-error (nreverse 1)) + (should-error (nreverse (make-char-table 'foo))) + (should-error (nreverse "xyzzy")) + (let ((A [])) + (nreverse A) + (should (equal A []))) + (let ((A [0])) + (nreverse A) + (should (equal A [0]))) + (let ((A [1 2 3 4])) + (nreverse A) + (should (equal A [4 3 2 1]))) + (let ((A [1 2 3 4])) + (nreverse A) + (nreverse A) + (should (equal A [1 2 3 4]))) + (let* ((A [1 2 3 4]) + (B (nreverse (nreverse A)))) + (should (equal A B)))) + (ert-deftest fns-tests-reverse-bool-vector () (let ((A (make-bool-vector 10 nil))) (dotimes (i 5) (aset A i t)) (should (equal [nil nil nil nil nil t t t t t] (vconcat (reverse A)))) (should (equal A (reverse (reverse A)))))) + +(ert-deftest fns-tests-nreverse-bool-vector () + (let ((A (make-bool-vector 10 nil))) + (dotimes (i 5) (aset A i t)) + (nreverse A) + (should (equal [nil nil nil nil nil t t t t t] (vconcat A))) + (should (equal [t t t t t nil nil nil nil nil] (vconcat (nreverse A)))))) |