diff options
| author | Craig Jennings <c@cjennings.net> | 2026-05-25 21:22:27 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-05-25 21:22:27 -0500 |
| commit | 60b51e1c996f1c8f152696946b9440f26ea9a956 (patch) | |
| tree | 3154332cc2b7d5bb3e0eb71a812d9effc8c46633 /tests/test-pearl-compose.el | |
| parent | f9841539b3adb192d0c15470fa9c31d6cbbdf447 (diff) | |
| download | pearl-60b51e1c996f1c8f152696946b9440f26ea9a956.tar.gz pearl-60b51e1c996f1c8f152696946b9440f26ea9a956.zip | |
refactor(save): retire the immediate-push field setters for buffer-editors
The structured fields now reconcile at save (the previous commits), so the immediate-push setters are the duplicate path that made the package feel like it had two save models. I retired them. pearl-set-priority is deleted outright — priority is edited org-natively through the heading cookie. pearl-set-state, pearl-set-assignee, and pearl-set-labels become pearl-edit-state / -assignee / -labels: the same completing-read picker, but it writes the buffer representation (keyword/name/id, the assignee drawer, the labels drawer plus the live LINEAR-LABEL-IDS set) and marks the field dirty instead of pushing. The change goes out at the next pearl-save-issue / pearl-save-all. pearl-compose-current-description is renamed pearl-edit-description (its compose-and-push behavior is unchanged — v2 doesn't touch the compose buffers).
The transient, the C-; L e keymap, the affordance preamble, and the README follow the new names, and the priority slots are dropped (no command — it's the org cookie). Deleting the setters left pearl--push-issue-field and pearl--priority-choices with no callers, so both are gone, along with the killed-buffer test that only exercised the removed helper. I filed a follow-up: the atomic savers' async commit callbacks need the same killed-buffer guard that helper carried.
The setter command tests are rewritten to assert the buffer-write-and-no-push contract. The reconcile-and-push path they used to cover is exercised in test-pearl-save.
Diffstat (limited to 'tests/test-pearl-compose.el')
| -rw-r--r-- | tests/test-pearl-compose.el | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/tests/test-pearl-compose.el b/tests/test-pearl-compose.el index bda75cb..a96a9ca 100644 --- a/tests/test-pearl-compose.el +++ b/tests/test-pearl-compose.el @@ -22,7 +22,7 @@ ;; Tests for the shared compose buffer (`pearl--compose-in-buffer' and its ;; submit/abort/body helpers) and the two commands wired onto it: ;; `pearl-add-comment' (interactive composer path) and -;; `pearl-compose-current-description'. The body is extracted below a read-only +;; `pearl-edit-description'. The body is extracted below a read-only ;; header and converted Org->Markdown by the callers. ;;; Code: @@ -129,7 +129,7 @@ Binds `captured' to the value the on-finish receives (or `:none'). Stubs (should-not composed) (should (string= "literal body" sent)))))) -;;; compose-current-description wiring +;;; edit-description wiring (ert-deftest test-pearl-compose-description-seeds-body-and-syncs () "The description composer seeds the current body and, on submit, writes it back and syncs." @@ -141,7 +141,7 @@ Binds `captured' to the value the on-finish receives (or `:none'). Stubs (funcall on-finish "Edited description"))) ((symbol-function 'pearl-sync-current-issue) (lambda () (setq synced t)))) - (pearl-compose-current-description) + (pearl-edit-description) ;; seeded with the existing body (should (string= "Body." seeded)) ;; the edited text was written into the issue body, then synced |
