diff options
| author | Craig Jennings <c@cjennings.net> | 2026-05-10 12:19:17 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-05-10 12:19:17 -0500 |
| commit | 9a08f714ac4c35f6f0b023cdf1a3b1fb33294ad2 (patch) | |
| tree | fa6cc368494c248ac97d783d2b0171a4ebf42ce8 /modules/diff-config.el | |
| parent | c7771a7447d56c931b7ccf2a1675d7fe8bd4c800 (diff) | |
| download | dotemacs-9a08f714ac4c35f6f0b023cdf1a3b1fb33294ad2.tar.gz dotemacs-9a08f714ac4c35f6f0b023cdf1a3b1fb33294ad2.zip | |
test(vterm): cover the copy-mode exit chain end-to-end
The unit tests for the cursor-restoration hook only exercised the helper in isolation. The real integration -- toggling the minor mode and watching the hook fire as part of the chain -- wasn't covered. If `vterm-copy-mode-done' or `cj/vterm-copy-mode-cancel' broke their exit semantics (or our hook stopped firing on `vterm-copy-mode-hook'), the unit tests would still pass but the cursor would stay stuck on the bar in real use.
Add five integration tests that toggle the actual minor mode through stubbed `vterm--enter-copy-mode' / `vterm--exit-copy-mode' (so we don't need a live vterm process) and assert the cursor moves through the full lifecycle: nil -> bar on enter, bar -> killed-local on exit. Cover all three exit paths Craig hits in normal use:
- vterm-copy-mode -1 directly (the toggle)
- vterm-copy-mode-done with an active region (M-w / RET)
- vterm-copy-mode-done with no region (line-selection branch)
- cj/vterm-copy-mode-cancel (C-g / <escape>)
Plus a multi-cycle test so a regression in `kill-local-variable' handling shows up.
Diffstat (limited to 'modules/diff-config.el')
0 files changed, 0 insertions, 0 deletions
