test: mock subprocess.Popen in test_executor_m4b_forces_merge to eliminate ffmpeg dependency

This commit is contained in:
Artem Akymenko
2026-07-24 19:17:36 +03:00
parent fcec4e9fe5
commit 7d28b7eb52
+8 -1
View File
@@ -432,10 +432,17 @@ class TestExecutorGaps:
with pytest.raises(ValueError, match="output_layout"): with pytest.raises(ValueError, match="output_layout"):
execute_conversion(plan, events, pipeline, resolver, tts_context) execute_conversion(plan, events, pipeline, resolver, tts_context)
def test_executor_m4b_forces_merge(self): @patch("subprocess.Popen")
def test_executor_m4b_forces_merge(self, mock_popen):
"""Executor forces merge for m4b format.""" """Executor forces merge for m4b format."""
from abogen.application.conversion_executor import execute_conversion from abogen.application.conversion_executor import execute_conversion
mock_proc = mock_popen.return_value
mock_proc.returncode = 0
mock_proc.wait.return_value = 0
mock_proc.stdin = MagicMock()
mock_proc.communicate.return_value = (b"", b"")
with tempfile.TemporaryDirectory() as tmpdir: with tempfile.TemporaryDirectory() as tmpdir:
req = ConversionRequest( req = ConversionRequest(
direct_text="Hello", direct_text="Hello",