test: added init failure test in audio sender

This commit is contained in:
JobvAlewijk
2025-11-24 20:05:10 +00:00
committed by Twirre
parent 2852b714f5
commit 2350f6eec7

View File

@@ -1,6 +1,5 @@
# coding=utf-8 # coding=utf-8
import os import os
import time
import mock import mock
import pytest import pytest
@@ -127,3 +126,22 @@ def test_break_microphone(mocker):
sender.wait_until_done() sender.wait_until_done()
send_socket.assert_not_called() send_socket.assert_not_called()
def test_pyaudio_init_failure(mocker, zmq_context):
"""
Tests the behavior when PyAudio initialization fails (raises an IOError).
"""
# Prevent binding the ZMQ socket
mocker.patch("robot_interface.endpoints.audio_sender.AudioSender.create_socket")
# Simulate PyAudio() failing
mocker.patch(
"robot_interface.endpoints.audio_sender.pyaudio.PyAudio",
side_effect=IOError("boom")
)
sender = AudioSender(zmq_context)
assert sender.audio is None
assert sender.microphone is None