Spaces:
Configuration error
Configuration error
# conftest.py | |
import importlib | |
import os | |
import sys | |
import asyncio | |
import pytest | |
sys.path.insert( | |
0, os.path.abspath("../..") | |
) # Adds the parent directory to the system path | |
import litellm | |
def event_loop(): | |
"""Create an instance of the default event loop for each test session.""" | |
loop = asyncio.get_event_loop_policy().new_event_loop() | |
yield loop | |
loop.close() | |
def setup_and_teardown(event_loop): # Add event_loop as a dependency | |
curr_dir = os.getcwd() | |
sys.path.insert(0, os.path.abspath("../..")) | |
import litellm | |
from litellm import Router | |
importlib.reload(litellm) | |
# Set the event loop from the fixture | |
asyncio.set_event_loop(event_loop) | |
print(litellm) | |
yield | |
# Clean up any pending tasks | |
pending = asyncio.all_tasks(event_loop) | |
for task in pending: | |
task.cancel() | |
# Run the event loop until all tasks are cancelled | |
if pending: | |
event_loop.run_until_complete(asyncio.gather(*pending, return_exceptions=True)) | |
def pytest_collection_modifyitems(config, items): | |
# Separate tests in 'test_amazing_proxy_custom_logger.py' and other tests | |
custom_logger_tests = [ | |
item for item in items if "custom_logger" in item.parent.name | |
] | |
other_tests = [item for item in items if "custom_logger" not in item.parent.name] | |
# Sort tests based on their names | |
custom_logger_tests.sort(key=lambda x: x.name) | |
other_tests.sort(key=lambda x: x.name) | |
# Reorder the items list | |
items[:] = custom_logger_tests + other_tests | |