mirror of
https://github.com/BerriAI/litellm.git
synced 2026-10-23 05:34:41 +00:00
Co-authored-by: devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
29 lines
792 B
Python
29 lines
792 B
Python
from collections.abc import AsyncIterator
|
|
from typing import Final
|
|
|
|
import pytest
|
|
import pytest_asyncio
|
|
|
|
import litellm
|
|
from litellm.litellm_core_utils.logging_worker import GLOBAL_LOGGING_WORKER
|
|
|
|
CALLBACK_LISTS: Final = (
|
|
"callbacks",
|
|
"success_callback",
|
|
"failure_callback",
|
|
"input_callback",
|
|
"_async_success_callback",
|
|
"_async_failure_callback",
|
|
"_async_input_callback",
|
|
)
|
|
|
|
|
|
@pytest_asyncio.fixture(autouse=True, loop_scope="function")
|
|
async def isolate_litellm_callback_lists(monkeypatch: pytest.MonkeyPatch) -> AsyncIterator[None]:
|
|
for name in CALLBACK_LISTS:
|
|
monkeypatch.setattr(litellm, name, list(getattr(litellm, name)))
|
|
try:
|
|
yield
|
|
finally:
|
|
await GLOBAL_LOGGING_WORKER.flush()
|
|
await GLOBAL_LOGGING_WORKER.stop()
|