"""Smoke test: the async DB fixture can create tables and round-trip a row.""" from __future__ import annotations from sqlalchemy import Integer, String, select from sqlalchemy.orm import Mapped, mapped_column from app.db import Base class _Widget(Base): __tablename__ = "_smoke_widget" id: Mapped[int] = mapped_column(Integer, primary_key=True) name: Mapped[str] = mapped_column(String(50)) async def test_db_fixture_creates_tables(db_session): db_session.add(_Widget(name="hello")) await db_session.commit() rows = (await db_session.execute(select(_Widget))).scalars().all() assert len(rows) == 1 assert rows[0].name == "hello"