diff options
| author | Craig Jennings <c@cjennings.net> | 2025-11-14 02:31:16 -0600 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2025-11-14 02:31:16 -0600 |
| commit | 9d55ed149e100b4fb3ef6f5a79d263dcb26ce835 (patch) | |
| tree | b02a77b84849f15b4302fda8f3f8e3942cb253ac /tests/test-video-audio-recording-toggle-functions.el | |
| parent | 7b982b1984dd37af42a2dfc9f4c3e52b27102860 (diff) | |
checking in modified/removed tests and other misc changes
Diffstat (limited to 'tests/test-video-audio-recording-toggle-functions.el')
| -rw-r--r-- | tests/test-video-audio-recording-toggle-functions.el | 185 |
1 files changed, 0 insertions, 185 deletions
diff --git a/tests/test-video-audio-recording-toggle-functions.el b/tests/test-video-audio-recording-toggle-functions.el deleted file mode 100644 index 2355ab4f..00000000 --- a/tests/test-video-audio-recording-toggle-functions.el +++ /dev/null @@ -1,185 +0,0 @@ -;;; test-video-audio-recording-toggle-functions.el --- Tests for toggle functions -*- lexical-binding: t; -*- - -;;; Commentary: -;; Unit tests for cj/video-recording-toggle and cj/audio-recording-toggle functions. -;; Tests start/stop toggle behavior for recording processes. - -;;; Code: - -(require 'ert) - -;; Stub dependencies before loading the module -(defvar cj/custom-keymap (make-sparse-keymap) - "Stub keymap for testing.") - -;; Stub directory variables -(defvar video-recordings-dir "/tmp/video-recordings/") -(defvar audio-recordings-dir "/tmp/audio-recordings/") - -;; Now load the actual production module -(require 'video-audio-recording) - -;;; Setup and Teardown - -(defun test-toggle-setup () - "Reset process variables before each test." - (setq cj/video-recording-ffmpeg-process nil) - (setq cj/audio-recording-ffmpeg-process nil) - (setq cj/recording-mic-device "test-mic") - (setq cj/recording-system-device "test-monitor")) - -(defun test-toggle-teardown () - "Clean up process variables after each test." - (when cj/video-recording-ffmpeg-process - (ignore-errors (delete-process cj/video-recording-ffmpeg-process))) - (when cj/audio-recording-ffmpeg-process - (ignore-errors (delete-process cj/audio-recording-ffmpeg-process))) - (setq cj/video-recording-ffmpeg-process nil) - (setq cj/audio-recording-ffmpeg-process nil) - (setq cj/recording-mic-device nil) - (setq cj/recording-system-device nil)) - -;;; Video Toggle - Normal Cases - -(ert-deftest test-video-audio-recording-video-toggle-normal-starts-when-not-recording () - "Test that video toggle starts recording when not currently recording." - (test-toggle-setup) - (unwind-protect - (let ((start-called nil)) - (cl-letf (((symbol-function 'cj/ffmpeg-record-video) - (lambda (_dir) (setq start-called t)))) - (cj/video-recording-toggle nil) - (should start-called))) - (test-toggle-teardown))) - -(ert-deftest test-video-audio-recording-video-toggle-normal-stops-when-recording () - "Test that video toggle stops recording when currently recording." - (test-toggle-setup) - (unwind-protect - (let ((stop-called nil) - (fake-process (make-process :name "test-video" :command '("sleep" "1000")))) - (setq cj/video-recording-ffmpeg-process fake-process) - (cl-letf (((symbol-function 'cj/video-recording-stop) - (lambda () (setq stop-called t)))) - (cj/video-recording-toggle nil) - (should stop-called)) - (ignore-errors (delete-process fake-process))) - (test-toggle-teardown))) - -(ert-deftest test-video-audio-recording-video-toggle-normal-uses-default-directory () - "Test that video toggle uses default directory when no prefix arg." - (test-toggle-setup) - (unwind-protect - (let ((recorded-dir nil)) - (cl-letf (((symbol-function 'cj/ffmpeg-record-video) - (lambda (dir) (setq recorded-dir dir)))) - (cj/video-recording-toggle nil) - (should (equal video-recordings-dir recorded-dir)))) - (test-toggle-teardown))) - -(ert-deftest test-video-audio-recording-video-toggle-normal-prompts-for-location-with-prefix () - "Test that video toggle prompts for location with prefix arg." - (test-toggle-setup) - (unwind-protect - (let ((prompt-called nil) - (recorded-dir nil)) - (cl-letf (((symbol-function 'read-directory-name) - (lambda (_prompt) (setq prompt-called t) "/custom/path/")) - ((symbol-function 'file-directory-p) - (lambda (_dir) t)) ; Directory exists - ((symbol-function 'cj/ffmpeg-record-video) - (lambda (dir) (setq recorded-dir dir)))) - (cj/video-recording-toggle t) - (should prompt-called) - (should (equal "/custom/path/" recorded-dir)))) - (test-toggle-teardown))) - -;;; Audio Toggle - Normal Cases - -(ert-deftest test-video-audio-recording-audio-toggle-normal-starts-when-not-recording () - "Test that audio toggle starts recording when not currently recording." - (test-toggle-setup) - (unwind-protect - (let ((start-called nil)) - (cl-letf (((symbol-function 'cj/ffmpeg-record-audio) - (lambda (_dir) (setq start-called t)))) - (cj/audio-recording-toggle nil) - (should start-called))) - (test-toggle-teardown))) - -(ert-deftest test-video-audio-recording-audio-toggle-normal-stops-when-recording () - "Test that audio toggle stops recording when currently recording." - (test-toggle-setup) - (unwind-protect - (let ((stop-called nil) - (fake-process (make-process :name "test-audio" :command '("sleep" "1000")))) - (setq cj/audio-recording-ffmpeg-process fake-process) - (cl-letf (((symbol-function 'cj/audio-recording-stop) - (lambda () (setq stop-called t)))) - (cj/audio-recording-toggle nil) - (should stop-called)) - (ignore-errors (delete-process fake-process))) - (test-toggle-teardown))) - -(ert-deftest test-video-audio-recording-audio-toggle-normal-uses-default-directory () - "Test that audio toggle uses default directory when no prefix arg." - (test-toggle-setup) - (unwind-protect - (let ((recorded-dir nil)) - (cl-letf (((symbol-function 'cj/ffmpeg-record-audio) - (lambda (dir) (setq recorded-dir dir)))) - (cj/audio-recording-toggle nil) - (should (equal audio-recordings-dir recorded-dir)))) - (test-toggle-teardown))) - -(ert-deftest test-video-audio-recording-audio-toggle-normal-prompts-for-location-with-prefix () - "Test that audio toggle prompts for location with prefix arg." - (test-toggle-setup) - (unwind-protect - (let ((prompt-called nil) - (recorded-dir nil)) - (cl-letf (((symbol-function 'read-directory-name) - (lambda (_prompt) (setq prompt-called t) "/custom/path/")) - ((symbol-function 'file-directory-p) - (lambda (_dir) t)) ; Directory exists - ((symbol-function 'cj/ffmpeg-record-audio) - (lambda (dir) (setq recorded-dir dir)))) - (cj/audio-recording-toggle t) - (should prompt-called) - (should (equal "/custom/path/" recorded-dir)))) - (test-toggle-teardown))) - -;;; Boundary Cases - -(ert-deftest test-video-audio-recording-video-toggle-boundary-creates-directory () - "Test that video toggle creates directory if it doesn't exist." - (test-toggle-setup) - (unwind-protect - (let ((mkdir-called nil)) - (cl-letf (((symbol-function 'file-directory-p) - (lambda (_dir) nil)) - ((symbol-function 'make-directory) - (lambda (_dir _parents) (setq mkdir-called t))) - ((symbol-function 'cj/ffmpeg-record-video) - (lambda (_dir) nil))) - (cj/video-recording-toggle nil) - (should mkdir-called))) - (test-toggle-teardown))) - -(ert-deftest test-video-audio-recording-audio-toggle-boundary-creates-directory () - "Test that audio toggle creates directory if it doesn't exist." - (test-toggle-setup) - (unwind-protect - (let ((mkdir-called nil)) - (cl-letf (((symbol-function 'file-directory-p) - (lambda (_dir) nil)) - ((symbol-function 'make-directory) - (lambda (_dir _parents) (setq mkdir-called t))) - ((symbol-function 'cj/ffmpeg-record-audio) - (lambda (_dir) nil))) - (cj/audio-recording-toggle nil) - (should mkdir-called))) - (test-toggle-teardown))) - -(provide 'test-video-audio-recording-toggle-functions) -;;; test-video-audio-recording-toggle-functions.el ends here |
