async def test_play_audio_already_playing(camera_obj: Camera): camera_obj.feature_flags.has_speaker = True camera_obj._initial_data = camera_obj.dict() camera_obj.talkback_stream = Mock() camera_obj.talkback_stream.is_running = True with pytest.raises(BadRequest): await camera_obj.play_audio("test")
async def test_play_audio(mock_talkback, camera_obj: Camera): camera_obj.feature_flags.has_speaker = True camera_obj._initial_data = camera_obj.dict() mock_instance = MockTalkback() mock_talkback.return_value = mock_instance await camera_obj.play_audio("test") mock_talkback.assert_called_with(camera_obj, "test", None) assert mock_instance.run_until_complete.called
async def test_play_audio_no_speaker(camera_obj: Camera): camera_obj.feature_flags.has_speaker = False camera_obj._initial_data = camera_obj.dict() with pytest.raises(BadRequest): await camera_obj.play_audio("test")