aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew White <mehw.is.me@inventati.org>2021-07-30 23:34:00 +0000
committerMatthew White <mehw.is.me@inventati.org>2021-10-20 23:01:53 +0200
commitdc5985243475216414e5d69a4fb8d80535cd1292 (patch)
tree530ec9b6fcb42a397c56ecc1e510f9f7cb0a2b8b
parent6f10a7a879e0e3d9c62d1363d615520fd47efcb9 (diff)
basic-persp-get-buffers: test persp-get-buffers
Test the utility function 'persp-get-buffers'. Expect the list of a perspective's buffers.
-rw-r--r--CHANGELOG.md1
-rw-r--r--test/test-perspective.el40
2 files changed, 41 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index bb46797..4c082ec 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -10,6 +10,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
### ERT tests added
+- `basic-persp-get-buffers`: evaluate `persp-get-buffers`.
- `basic-persp-test-buffer-in-persps`: evaluate `persp-test-buffer-in-persps`.
- `persp-test-buffer-in-persps`: utility function to verify that a buffer is in specified perspectives only.
- `baisc-persp-test-kill-extra-buffers`: evaluate `persp-test-kill-extra-buffers`
diff --git a/test/test-perspective.el b/test/test-perspective.el
index 28798a0..30e4004 100644
--- a/test/test-perspective.el
+++ b/test/test-perspective.el
@@ -693,6 +693,46 @@ not automatically switch to the perspective."
;; cleanup
(should (get-buffer-create "*scratch*")))
+(ert-deftest basic-persp-get-buffers ()
+ "Test `persp-get-buffers'.
+Expect the list of a perspective's buffers."
+ (persp-test-with-persp
+ ;; buffers whose name is special should be listed
+ (let ((special-buffer (get-buffer-create " *foo*")))
+ (should (buffer-live-p special-buffer))
+ (persp-add-buffer special-buffer)
+ (let ((buffers (copy-sequence (persp-buffers (persp-curr)))))
+ (should (equal buffers (persp-get-buffers (persp-curr))))
+ (should (equal buffers (persp-get-buffers "main")))
+ (should (equal buffers (persp-current-buffers)))
+ (should (equal buffers (persp-get-buffers)))
+ (should (memq special-buffer buffers)))
+ (persp-switch "A")
+ (persp-add-buffer special-buffer)
+ (let ((buffers (copy-sequence (persp-buffers (persp-curr)))))
+ (should (equal buffers (persp-get-buffers (persp-curr))))
+ (should (equal buffers (persp-get-buffers "A")))
+ (should (equal buffers (persp-current-buffers)))
+ (should (equal buffers (persp-get-buffers)))
+ (should (memq special-buffer buffers)))
+ (persp-switch "B")
+ (persp-add-buffer special-buffer)
+ (let ((buffers (copy-sequence (persp-buffers (persp-curr)))))
+ (should (equal buffers (persp-get-buffers (persp-curr))))
+ (should (equal buffers (persp-get-buffers "B")))
+ (should (equal buffers (persp-current-buffers)))
+ (should (equal buffers (persp-get-buffers)))
+ (should (memq special-buffer buffers)))
+ (persp-switch "main")
+ (should (memq special-buffer (persp-get-buffers)))
+ (should (memq special-buffer (persp-get-buffers "A")))
+ (should (memq special-buffer (persp-get-buffers "B")))
+ (should (equal (persp-get-buffers) (persp-get-buffers "main")))
+ (should-not (equal (persp-get-buffers) (persp-get-buffers "A")))
+ (should-not (equal (persp-get-buffers "A") (persp-get-buffers "B")))))
+ ;; cleanup
+ (persp-test-kill-extra-buffers " *foo*"))
+
(ert-deftest basic-persp-switching ()
(persp-test-with-persp
(persp-test-with-temp-buffers (A1 A2 B1 B2 B3)