2025-11-10 15:46:40 +01:00
|
|
|
import pytest
|
2025-11-13 23:05:26 +01:00
|
|
|
import pytest_asyncio
|
2025-11-10 15:46:40 +01:00
|
|
|
import asyncio
|
2025-11-13 22:53:40 +01:00
|
|
|
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())
|
2025-11-10 15:46:40 +01:00
|
|
|
|
|
|
|
|
@pytest.fixture(scope="session")
|
|
|
|
|
def event_loop():
|
|
|
|
|
loop = asyncio.get_event_loop_policy().new_event_loop()
|
|
|
|
|
yield loop
|
|
|
|
|
loop.close()
|
2025-11-13 22:53:40 +01:00
|
|
|
|
2025-11-13 23:05:26 +01:00
|
|
|
@pytest_asyncio.fixture(scope="session", autouse=True)
|
2025-11-13 22:53:40 +01:00
|
|
|
async def cleanup_db():
|
|
|
|
|
yield
|
|
|
|
|
await Tortoise.close_connections()
|