From 32c3298effe0b57dd90d8657bd54fa14f7eaec6d Mon Sep 17 00:00:00 2001 From: gui217 Date: Tue, 30 Dec 2025 13:39:36 +0200 Subject: [PATCH] Apply ruff formatting to test file --- tests/test_rnnoise_filter.py | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/tests/test_rnnoise_filter.py b/tests/test_rnnoise_filter.py index ea6e54a39..ff425f203 100644 --- a/tests/test_rnnoise_filter.py +++ b/tests/test_rnnoise_filter.py @@ -104,23 +104,23 @@ class TestRNNoiseFilter(unittest.IsolatedAsyncioTestCase): async def test_rnnoise_filter_handles_empty_resampler_output(self): """Test that RNNoise filter handles empty bytes from resampler gracefully. - + This reproduces the issue where mute/silence input (like "bx000") causes the resampler to return empty bytes. The filter should handle this gracefully without raising a memory error. """ filter = RNNoiseFilter() - + # Initialize with a sample rate that requires resampling (not 48kHz) await filter.start(sample_rate=16000) - + # Enable filtering await filter.process_frame(FilterEnableFrame(enable=True)) - + # Create mute/silence audio chunk (like "bx000" - all zeros) # This simulates a mute sound that causes resampler to return empty bytes mute_audio = b"\x00\x00" * 160 # 160 samples of silence at 16kHz (10ms) - + # Mock the resampler to return empty bytes when given mute input # This simulates the behavior where resampler returns b"" for mute sounds async def mock_resample(audio, in_rate, out_rate): @@ -131,13 +131,15 @@ class TestRNNoiseFilter(unittest.IsolatedAsyncioTestCase): return b"" # Return empty bytes - this triggers the bug # Otherwise, do normal resampling return audio - + filter._resampler_in.resample = AsyncMock(side_effect=mock_resample) - + result = await filter.filter(mute_audio) - + # When resampler returns empty bytes, filter should return empty bytes # (or handle it gracefully without crashing) - self.assertEqual(result, b"", "Filter should return empty bytes when resampler returns empty bytes") - + self.assertEqual( + result, b"", "Filter should return empty bytes when resampler returns empty bytes" + ) + await filter.stop()