import pytest import pytest_asyncio import asyncio from tortoise import Tortoise # Initialize Tortoise at module level async def _init_tortoise(): await Tortoise.init( db_url="sqlite://:memory:", modules={ "models": ["mywebdav.models"], "billing": ["mywebdav.billing.models"] } ) await Tortoise.generate_schemas() # Run initialization asyncio.run(_init_tortoise()) @pytest.fixture(scope="session") def event_loop(): loop = asyncio.get_event_loop_policy().new_event_loop() yield loop loop.close() @pytest_asyncio.fixture(scope="session", autouse=True) async def cleanup_db(): yield await Tortoise.close_connections()