summaryrefslogtreecommitdiff
path: root/tests/test-integration-recording-modeline-sync.el
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-02-06 13:00:01 -0600
committerCraig Jennings <c@cjennings.net>2026-02-06 13:12:44 -0600
commitc603124f6487604baee5aab590e1432e99570ca8 (patch)
tree85c8b3ac4dc0573b1aee4448c1ae7d2c21ce3225 /tests/test-integration-recording-modeline-sync.el
parent25a2acb634212455abeb0a0c8fb1a97c3ece3a2c (diff)
feat(recording): rewrite device setup, fix video stop, update modeline icons
Video stop fix: kill wf-recorder (producer) first on Wayland so ffmpeg gets clean EOF, then signal process group. Replaces sit-for with poll-based wait-for-exit. Fixes zero-byte output files. Device selection: rewrite quick setup to show all available mics with PulseAudio descriptions, auto-detect default sink monitor for system audio. Skip confirmation dialog, add Cancel option to mic list. Modeline: replace red dot emoji with nerd font icons (mic/camcorder). Rename quick-setup-for-calls to quick-setup, rebind C-; r s / C-; r S. 173 recording tests pass (was 165).
Diffstat (limited to 'tests/test-integration-recording-modeline-sync.el')
-rw-r--r--tests/test-integration-recording-modeline-sync.el30
1 files changed, 15 insertions, 15 deletions
diff --git a/tests/test-integration-recording-modeline-sync.el b/tests/test-integration-recording-modeline-sync.el
index fab442bd..6bb0e99e 100644
--- a/tests/test-integration-recording-modeline-sync.el
+++ b/tests/test-integration-recording-modeline-sync.el
@@ -68,7 +68,7 @@
When user toggles audio recording on:
1. Process is created
-2. Modeline indicator updates to show 🔴Audio
+2. Modeline indicator updates to show 󰍬 (mic icon)
3. State is in sync immediately (not delayed)
Components integrated:
@@ -94,7 +94,7 @@ Validates:
(cj/audio-recording-toggle nil)
;; Immediately after toggle: modeline should show recording
- (should (equal " 🔴Audio " (cj/recording-modeline-indicator)))
+ (should (equal " 󰍬 " (cj/recording-modeline-indicator)))
;; Process should be alive
(should (process-live-p cj/audio-recording-ffmpeg-process)))
@@ -127,7 +127,7 @@ Validates:
;; Start recording
(cj/audio-recording-toggle nil)
- (should (equal " 🔴Audio " (cj/recording-modeline-indicator)))
+ (should (equal " 󰍬 " (cj/recording-modeline-indicator)))
;; Stop recording
(cj/audio-recording-toggle nil)
@@ -150,7 +150,7 @@ Components integrated:
Validates:
- Video recording follows same sync pattern as audio
-- Modeline shows 🔴Video correctly"
+- Modeline shows 󰃽correctly"
(test-integration-modeline-setup)
(unwind-protect
(cl-letf (((symbol-function 'file-directory-p)
@@ -164,7 +164,7 @@ Validates:
;; Start video
(cj/video-recording-toggle nil)
- (should (equal " 🔴Video " (cj/recording-modeline-indicator)))
+ (should (equal " 󰃽 " (cj/recording-modeline-indicator)))
;; Stop video
(cj/video-recording-toggle nil)
@@ -201,15 +201,15 @@ Validates:
;; State 2: Audio only
(cj/audio-recording-toggle nil)
- (should (equal " 🔴Audio " (cj/recording-modeline-indicator)))
+ (should (equal " 󰍬 " (cj/recording-modeline-indicator)))
;; State 3: Both
(cj/video-recording-toggle nil)
- (should (equal " 🔴A+V " (cj/recording-modeline-indicator)))
+ (should (equal " 󰍬󰃽 " (cj/recording-modeline-indicator)))
;; State 4: Video only (stop audio)
(cj/audio-recording-toggle nil)
- (should (equal " 🔴Video " (cj/recording-modeline-indicator)))
+ (should (equal " 󰃽 " (cj/recording-modeline-indicator)))
;; State 5: None (stop video)
(cj/video-recording-toggle nil)
@@ -249,7 +249,7 @@ Validates:
(cj/audio-recording-toggle nil)
;; Immediately after start: should show recording
- (should (equal " 🔴Audio " (cj/recording-modeline-indicator)))
+ (should (equal " 󰍬 " (cj/recording-modeline-indicator)))
;; Wait for process to exit and sentinel to run
(sit-for 0.3)
@@ -323,7 +323,7 @@ Validates:
(dotimes (_i 5)
;; Start
(cj/audio-recording-toggle nil)
- (should (equal " 🔴Audio " (cj/recording-modeline-indicator)))
+ (should (equal " 󰍬 " (cj/recording-modeline-indicator)))
(should cj/audio-recording-ffmpeg-process)
;; Stop
@@ -357,23 +357,23 @@ Validates:
;; Start audio
(cj/audio-recording-toggle nil)
- (should (equal " 🔴Audio " (cj/recording-modeline-indicator)))
+ (should (equal " 󰍬 " (cj/recording-modeline-indicator)))
;; Add video - modeline should combine
(cj/video-recording-toggle nil)
- (should (equal " 🔴A+V " (cj/recording-modeline-indicator)))
+ (should (equal " 󰍬󰃽 " (cj/recording-modeline-indicator)))
;; Stop audio - video indicator should persist
(cj/audio-recording-toggle nil)
- (should (equal " 🔴Video " (cj/recording-modeline-indicator)))
+ (should (equal " 󰃽 " (cj/recording-modeline-indicator)))
;; Start audio again - should recombine
(cj/audio-recording-toggle nil)
- (should (equal " 🔴A+V " (cj/recording-modeline-indicator)))
+ (should (equal " 󰍬󰃽 " (cj/recording-modeline-indicator)))
;; Stop video - audio indicator should persist
(cj/video-recording-toggle nil)
- (should (equal " 🔴Audio " (cj/recording-modeline-indicator)))
+ (should (equal " 󰍬 " (cj/recording-modeline-indicator)))
;; Stop audio - should be empty
(cj/audio-recording-toggle nil)