Files
2026-moving-helper/tests/conftest.py
T
tliu93 8b8bd9f38f
test / pytest (push) Successful in 1m34s
Add Alembic migration foundation
2026-06-01 16:02:43 +02:00

34 lines
734 B
Python

from pathlib import Path
import pytest
from fastapi.testclient import TestClient
from sqlalchemy.orm import Session
from app.db import SessionLocal, configure_database
from app.main import create_app
from app.migrate import run_migrations
@pytest.fixture
def client(tmp_path: Path):
test_db_path = tmp_path / "test.db"
database_url = f"sqlite:///{test_db_path}"
# Run migration first so DB is at head before app starts.
run_migrations(database_url)
configure_database(database_url)
app = create_app()
with TestClient(app) as test_client:
yield test_client
@pytest.fixture
def db_session(client) -> Session:
db = SessionLocal()
try:
yield db
finally:
db.close()