mirror of
https://github.com/tiennm99/litellm.git
synced 2026-08-22 08:24:12 +00:00
fix(tests): isolate flaky tests - restore global state in setup/teardown (#21791)
* fix(tests): isolate flaky files endpoint tests from global proxy state * test(secret_managers): add mocked unit test for write/read JSON secret cycle * fix(tests): restore litellm.callbacks in TestSpendLogsPayload setup/teardown * fix(tests): clear app.openapi_schema in TestSwaggerChatCompletions setup/teardown * fix(tests): add flaky marker to test_async_increment_tokens_with_ttl_preservation
This commit is contained in:
@@ -1116,6 +1116,7 @@ async def test_dynamic_rate_limiting_v3():
|
||||
), "RPM limit should be enforced when dynamic mode and failures detected"
|
||||
|
||||
|
||||
@pytest.mark.flaky(reruns=3)
|
||||
@pytest.mark.asyncio
|
||||
async def test_async_increment_tokens_with_ttl_preservation():
|
||||
"""
|
||||
|
||||
@@ -1211,6 +1211,12 @@ async def _wait_for_mock_call(mock, timeout=10, interval=0.1):
|
||||
|
||||
|
||||
class TestSpendLogsPayload:
|
||||
def setup_method(self):
|
||||
self._original_callbacks = litellm.callbacks[:]
|
||||
|
||||
def teardown_method(self):
|
||||
litellm.callbacks = self._original_callbacks
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_spend_logs_payload_e2e(self):
|
||||
litellm.callbacks = [_ProxyDBLogger(message_logging=False)]
|
||||
|
||||
@@ -17,6 +17,12 @@ from litellm.proxy.proxy_server import app
|
||||
class TestSwaggerChatCompletions:
|
||||
"""Test suite for validating /chat/completions schema in Swagger documentation."""
|
||||
|
||||
def setup_method(self):
|
||||
app.openapi_schema = None
|
||||
|
||||
def teardown_method(self):
|
||||
app.openapi_schema = None
|
||||
|
||||
@pytest.fixture
|
||||
def client(self):
|
||||
"""FastAPI test client for the proxy server."""
|
||||
@@ -315,7 +321,8 @@ class TestSwaggerChatCompletions:
|
||||
This ensures Swagger UI works correctly with reverse proxies and subpath deployments.
|
||||
"""
|
||||
from unittest.mock import patch
|
||||
from litellm.proxy.proxy_server import get_openapi_schema, custom_openapi, app
|
||||
|
||||
from litellm.proxy.proxy_server import app, custom_openapi, get_openapi_schema
|
||||
|
||||
# Test cases: (server_root_path, expected_servers_url)
|
||||
# Note: empty string is falsy in Python, so servers won't be set
|
||||
|
||||
Reference in New Issue
Block a user