# What is this? ## unit tests for openai tts endpoint import sys, os, asyncio, time, random, uuid import traceback from dotenv import load_dotenv load_dotenv() import os sys.path.insert( 0, os.path.abspath("../..") ) # Adds the parent directory to the system path import pytest import litellm, openai from pathlib import Path @pytest.mark.parametrize("sync_mode", [True, False]) @pytest.mark.asyncio async def test_audio_speech_litellm(sync_mode): speech_file_path = Path(__file__).parent / "speech.mp3" if sync_mode: response = litellm.speech( model="openai/tts-1", voice="alloy", input="the quick brown fox jumped over the lazy dogs", api_base=None, api_key=None, organization=None, project=None, max_retries=1, timeout=600, client=None, optional_params={}, ) from litellm.llms.openai import HttpxBinaryResponseContent assert isinstance(response, HttpxBinaryResponseContent) else: response = await litellm.aspeech( model="openai/tts-1", voice="alloy", input="the quick brown fox jumped over the lazy dogs", api_base=None, api_key=None, organization=None, project=None, max_retries=1, timeout=600, client=None, optional_params={}, ) from litellm.llms.openai import HttpxBinaryResponseContent assert isinstance(response, HttpxBinaryResponseContent) @pytest.mark.parametrize("mode", ["iterator"]) # "file", @pytest.mark.asyncio async def test_audio_speech_router(mode): speech_file_path = Path(__file__).parent / "speech.mp3" from litellm import Router client = Router( model_list=[ { "model_name": "tts", "litellm_params": { "model": "openai/tts-1", }, }, ] ) response = await client.aspeech( model="tts", voice="alloy", input="the quick brown fox jumped over the lazy dogs", api_base=None, api_key=None, organization=None, project=None, max_retries=1, timeout=600, client=None, optional_params={}, ) from litellm.llms.openai import HttpxBinaryResponseContent assert isinstance(response, HttpxBinaryResponseContent)