diff options
Diffstat (limited to 'tests/test-undead-buffers-kill-all-other-buffers-and-windows.el')
| -rw-r--r-- | tests/test-undead-buffers-kill-all-other-buffers-and-windows.el | 159 |
1 files changed, 0 insertions, 159 deletions
diff --git a/tests/test-undead-buffers-kill-all-other-buffers-and-windows.el b/tests/test-undead-buffers-kill-all-other-buffers-and-windows.el deleted file mode 100644 index dcd08e96..00000000 --- a/tests/test-undead-buffers-kill-all-other-buffers-and-windows.el +++ /dev/null @@ -1,159 +0,0 @@ -;;; test-undead-buffers-kill-all-other-buffers-and-windows.el --- Tests for cj/kill-all-other-buffers-and-windows -*- lexical-binding: t; -*- - -;;; Commentary: -;; Tests for the cj/kill-all-other-buffers-and-windows function from undead-buffers.el - -;;; Code: - -(require 'ert) -(require 'undead-buffers) -(require 'testutil-general) - -;;; Setup and Teardown - -(defun test-kill-all-other-buffers-and-windows-setup () - "Setup for kill-all-other-buffers-and-windows tests." - (cj/create-test-base-dir) - (delete-other-windows)) - -(defun test-kill-all-other-buffers-and-windows-teardown () - "Teardown for kill-all-other-buffers-and-windows tests." - (delete-other-windows) - (cj/delete-test-base-dir)) - -;;; Normal Cases - -(ert-deftest test-kill-all-other-buffers-and-windows-should-kill-regular-buffers () - "Should kill all regular buffers except current." - (test-kill-all-other-buffers-and-windows-setup) - (unwind-protect - (let ((main (current-buffer)) - (buf1 (generate-new-buffer "*test-regular-1*")) - (buf2 (generate-new-buffer "*test-regular-2*"))) - (unwind-protect - (progn - (should (buffer-live-p buf1)) - (should (buffer-live-p buf2)) - (cj/kill-all-other-buffers-and-windows) - (should (buffer-live-p main)) - (should-not (buffer-live-p buf1)) - (should-not (buffer-live-p buf2))) - (when (buffer-live-p buf1) (kill-buffer buf1)) - (when (buffer-live-p buf2) (kill-buffer buf2)))) - (test-kill-all-other-buffers-and-windows-teardown))) - -(ert-deftest test-kill-all-other-buffers-and-windows-should-bury-undead-buffers () - "Should bury undead buffers instead of killing them." - (test-kill-all-other-buffers-and-windows-setup) - (unwind-protect - (let ((orig (copy-sequence cj/undead-buffer-list)) - (main (current-buffer)) - (buf1 (generate-new-buffer "*test-undead-1*")) - (buf2 (generate-new-buffer "*test-undead-2*"))) - (unwind-protect - (progn - (add-to-list 'cj/undead-buffer-list "*test-undead-1*") - (add-to-list 'cj/undead-buffer-list "*test-undead-2*") - (cj/kill-all-other-buffers-and-windows) - (should (buffer-live-p main)) - (should (buffer-live-p buf1)) - (should (buffer-live-p buf2))) - (setq cj/undead-buffer-list orig) - (when (buffer-live-p buf1) (kill-buffer buf1)) - (when (buffer-live-p buf2) (kill-buffer buf2)))) - (test-kill-all-other-buffers-and-windows-teardown))) - -(ert-deftest test-kill-all-other-buffers-and-windows-should-keep-current-buffer () - "Should always keep the current buffer alive." - (test-kill-all-other-buffers-and-windows-setup) - (unwind-protect - (let ((main (current-buffer))) - (cj/kill-all-other-buffers-and-windows) - (should (buffer-live-p main)) - (should (eq main (current-buffer)))) - (test-kill-all-other-buffers-and-windows-teardown))) - -(ert-deftest test-kill-all-other-buffers-and-windows-should-delete-all-other-windows () - "Should delete all windows except current." - (test-kill-all-other-buffers-and-windows-setup) - (unwind-protect - (progn - (split-window) - (split-window) - (should (> (length (window-list)) 1)) - (cj/kill-all-other-buffers-and-windows) - (should (one-window-p))) - (test-kill-all-other-buffers-and-windows-teardown))) - -;;; Boundary Cases - -(ert-deftest test-kill-all-other-buffers-and-windows-mixed-undead-and-regular-buffers () - "With mix of undead and regular buffers, should handle both correctly." - (test-kill-all-other-buffers-and-windows-setup) - (unwind-protect - (let ((orig (copy-sequence cj/undead-buffer-list)) - (main (current-buffer)) - (regular (generate-new-buffer "*test-regular*")) - (undead (generate-new-buffer "*test-undead*"))) - (unwind-protect - (progn - (add-to-list 'cj/undead-buffer-list "*test-undead*") - (cj/kill-all-other-buffers-and-windows) - (should (buffer-live-p main)) - (should-not (buffer-live-p regular)) - (should (buffer-live-p undead))) - (setq cj/undead-buffer-list orig) - (when (buffer-live-p regular) (kill-buffer regular)) - (when (buffer-live-p undead) (kill-buffer undead)))) - (test-kill-all-other-buffers-and-windows-teardown))) - -(ert-deftest test-kill-all-other-buffers-and-windows-all-undead-buffers-should-bury-all () - "When all other buffers are undead, should bury all of them." - (test-kill-all-other-buffers-and-windows-setup) - (unwind-protect - (let ((orig (copy-sequence cj/undead-buffer-list)) - (main (current-buffer)) - (undead1 (generate-new-buffer "*test-all-undead-1*")) - (undead2 (generate-new-buffer "*test-all-undead-2*")) - (undead3 (generate-new-buffer "*test-all-undead-3*"))) - (unwind-protect - (progn - (add-to-list 'cj/undead-buffer-list "*test-all-undead-1*") - (add-to-list 'cj/undead-buffer-list "*test-all-undead-2*") - (add-to-list 'cj/undead-buffer-list "*test-all-undead-3*") - (cj/kill-all-other-buffers-and-windows) - (should (buffer-live-p main)) - (should (buffer-live-p undead1)) - (should (buffer-live-p undead2)) - (should (buffer-live-p undead3))) - (setq cj/undead-buffer-list orig) - (when (buffer-live-p undead1) (kill-buffer undead1)) - (when (buffer-live-p undead2) (kill-buffer undead2)) - (when (buffer-live-p undead3) (kill-buffer undead3)))) - (test-kill-all-other-buffers-and-windows-teardown))) - -(ert-deftest test-kill-all-other-buffers-and-windows-should-prompt-for-modified-buffers () - "Should call cj/save-some-buffers to handle modified buffers." - (test-kill-all-other-buffers-and-windows-setup) - (unwind-protect - (let ((main (current-buffer)) - (file (cj/create-temp-test-file-with-content "original")) - save-called) - ;; Mock cj/save-some-buffers to track if it's called - (cl-letf (((symbol-function 'cj/save-some-buffers) - (lambda (&optional arg) - (setq save-called t)))) - (let ((buf (find-file-noselect file))) - (unwind-protect - (progn - (with-current-buffer buf - (insert "modified")) - (cj/kill-all-other-buffers-and-windows) - (should save-called)) - (when (buffer-live-p buf) - (set-buffer-modified-p nil) - (kill-buffer buf)))))) - (test-kill-all-other-buffers-and-windows-teardown))) - -(provide 'test-undead-buffers-kill-all-other-buffers-and-windows) -;;; test-undead-buffers-kill-all-other-buffers-and-windows.el ends here |
