aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-27 15:08:52 -0500
committerCraig Jennings <c@cjennings.net>2026-05-27 15:08:52 -0500
commit9b04860a22b30db746bbe4cd3376383cc19432ea (patch)
tree89895af7c8f37be9ea59465b216fb3af1541b8b7 /tests
parent84d8ab6a3ad97697a717a770c42010e9ec9076e5 (diff)
downloaddotemacs-9b04860a22b30db746bbe4cd3376383cc19432ea.tar.gz
dotemacs-9b04860a22b30db746bbe4cd3376383cc19432ea.zip
refactor(prog): open daily-prep respecting the window split
C-c p d (cj/open-project-daily-prep) always forced the prep doc into another window. I switched it to cj/--find-file-respecting-split, the same helper the sibling C-c p t (project todo) uses: it opens the other window when the frame is split and reuses the current window when it isn't. The two project-open commands now behave the same way.
Diffstat (limited to 'tests')
-rw-r--r--tests/test-prog-general-open-project-daily-prep.el21
1 files changed, 12 insertions, 9 deletions
diff --git a/tests/test-prog-general-open-project-daily-prep.el b/tests/test-prog-general-open-project-daily-prep.el
index 9a38757a..07895ed4 100644
--- a/tests/test-prog-general-open-project-daily-prep.el
+++ b/tests/test-prog-general-open-project-daily-prep.el
@@ -2,12 +2,14 @@
;;; Commentary:
;; `cj/open-project-daily-prep' (C-c p d) opens inbox/today-prep.org under the
-;; current Projectile project root, in another window. It is project-scoped:
-;; projects without a prep file get a message instead. `projectile-project-root'
-;; (external project state) and `find-file-other-window' (the window/visit
-;; boundary) are stubbed; real temp directories drive the file-exists check, and
-;; the message branches are checked via the command's return value rather than
-;; by stubbing `message'.
+;; current Projectile project root, via `cj/--find-file-respecting-split' so it
+;; lands in the other window when the frame is split and reuses the current
+;; window otherwise (matching `cj/open-project-root-todo'). It is
+;; project-scoped: projects without a prep file get a message instead.
+;; `projectile-project-root' (external project state) and
+;; `cj/--find-file-respecting-split' (the window/visit boundary) are stubbed;
+;; real temp directories drive the file-exists check, and the message branches
+;; are checked via the command's return value rather than by stubbing `message'.
;;; Code:
@@ -16,8 +18,8 @@
(add-to-list 'load-path (expand-file-name "modules" user-emacs-directory))
(require 'prog-general)
-(ert-deftest test-prog-general-daily-prep-opens-existing-in-other-window ()
- "Normal: in a project with a prep file, open it in another window."
+(ert-deftest test-prog-general-daily-prep-opens-existing-respecting-split ()
+ "Normal: in a project with a prep file, open it respecting the split."
(let* ((root (file-name-as-directory (make-temp-file "cj-prep-" t)))
(prep (expand-file-name "inbox/today-prep.org" root))
opened)
@@ -26,7 +28,8 @@
(make-directory (expand-file-name "inbox" root) t)
(write-region "" nil prep)
(cl-letf (((symbol-function 'projectile-project-root) (lambda () root))
- ((symbol-function 'find-file-other-window) (lambda (f) (setq opened f))))
+ ((symbol-function 'cj/--find-file-respecting-split)
+ (lambda (f) (setq opened f))))
(cj/open-project-daily-prep))
(should (equal opened prep)))
(delete-directory root t))))