Spaces:
Configuration error
Configuration error
import asyncio | |
import os | |
import sys | |
from unittest.mock import Mock, patch, AsyncMock | |
import pytest | |
from fastapi import Request | |
from litellm.proxy.utils import _get_redoc_url, _get_docs_url | |
from datetime import datetime | |
sys.path.insert(0, os.path.abspath("../..")) | |
import litellm | |
async def test_disable_spend_logs(): | |
""" | |
Test that the spend logs are not written to the database when disable_spend_logs is True | |
""" | |
# Mock the necessary components | |
mock_prisma_client = Mock() | |
mock_prisma_client.spend_log_transactions = [] | |
with patch("litellm.proxy.proxy_server.disable_spend_logs", True), patch( | |
"litellm.proxy.proxy_server.prisma_client", mock_prisma_client | |
): | |
from litellm.proxy.db.db_spend_update_writer import DBSpendUpdateWriter | |
db_spend_update_writer = DBSpendUpdateWriter() | |
# Call update_database with disable_spend_logs=True | |
await db_spend_update_writer.update_database( | |
token="fake-token", | |
response_cost=0.1, | |
user_id="user123", | |
completion_response=None, | |
start_time=datetime.now(), | |
end_time=datetime.now(), | |
end_user_id="end_user_id", | |
team_id="team_id", | |
org_id="org_id", | |
kwargs={}, | |
) | |
# Verify no spend logs were added | |
assert len(mock_prisma_client.spend_log_transactions) == 0 | |