summaryrefslogtreecommitdiff
path: root/test/lisp/ibuffer-tests.el
diff options
context:
space:
mode:
authorTino Calancha <tino.calancha@gmail.com>2016-12-07 21:49:50 +0900
committerTino Calancha <tino.calancha@gmail.com>2016-12-07 21:49:50 +0900
commit53fefb55c5cd8a56f3273daaba21b1aa03de557a (patch)
treec3d84df7c22fea051268526632e96236ac9cae6d /test/lisp/ibuffer-tests.el
parent0fa281fe2f3f104ec954dde096fd085eba42021f (diff)
downloademacs-53fefb55c5cd8a56f3273daaba21b1aa03de557a.tar.gz
ibuffer-decompose-filter-group avoid unwanted side effects
* lisp/ibuf-ext.el (ibuffer-delete-alist): Remove it. (ibuffer-remove-alist): New defun; it supersedes 'ibuffer-delete-alist'. All callers changed (Bug#25058). * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25058): Add test.
Diffstat (limited to 'test/lisp/ibuffer-tests.el')
-rw-r--r--test/lisp/ibuffer-tests.el33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/lisp/ibuffer-tests.el b/test/lisp/ibuffer-tests.el
index 799f3fbbdc7..9fdaaf0e097 100644
--- a/test/lisp/ibuffer-tests.el
+++ b/test/lisp/ibuffer-tests.el
@@ -93,5 +93,38 @@
(should (equal (cdr (assoc "test2" ibuffer-saved-filters)) test2))
(should (equal (cdr (assoc "test3" ibuffer-saved-filters)) test3))))
+(ert-deftest ibuffer-test-Bug25058 ()
+ "Test for http://debbugs.gnu.org/25058 ."
+ (ibuffer)
+ (let ((orig-filters ibuffer-saved-filter-groups)
+ (tmp-filters '(("saved-filters"
+ ("Shell"
+ (used-mode . shell-mode))
+ ("Elisp"
+ (or
+ (used-mode . emacs-lisp-mode)
+ (used-mode . lisp-interaction-mode)))
+ ("Dired"
+ (used-mode . dired-mode))
+ ("Info"
+ (or
+ (used-mode . help-mode)
+ (used-mode . debugger-mode)
+ (used-mode . Custom-mode)
+ (used-mode . completion-list-mode)
+ (name . "\\`[*]Messages[*]\\'")))))))
+ (unwind-protect
+ (progn
+ (setq ibuffer-saved-filter-groups tmp-filters)
+ (ibuffer-switch-to-saved-filter-groups "saved-filters")
+ (ibuffer-decompose-filter-group "Elisp")
+ (ibuffer-filter-disable)
+ (ibuffer-switch-to-saved-filter-groups "saved-filters")
+ (should (assoc "Elisp" (cdar ibuffer-saved-filter-groups))))
+ (setq ibuffer-saved-filter-groups orig-filters)
+ (ibuffer-awhen (get-buffer "*Ibuffer*")
+ (and (buffer-live-p it) (kill-buffer it))))))
+
+
(provide 'ibuffer-tests)
;; ibuffer-tests.el ends here