diff --git a/backend/app/models/import_settings.py b/backend/app/models/import_settings.py index b8d0d83..9af4ed0 100644 --- a/backend/app/models/import_settings.py +++ b/backend/app/models/import_settings.py @@ -12,7 +12,9 @@ from .base import Base class ImportSettings(Base): __tablename__ = "import_settings" - __table_args__ = (CheckConstraint("id = 1", name="ck_import_settings_singleton"),) + # Bare constraint name — Base.metadata's naming convention applies the + # ck__ prefix, producing the final ck_import_settings_singleton. + __table_args__ = (CheckConstraint("id = 1", name="singleton"),) id: Mapped[int] = mapped_column(Integer, primary_key=True) import_scan_path: Mapped[str] = mapped_column(Text, nullable=False, default="/import") diff --git a/tests/test_health.py b/tests/test_health.py index d4eb411..b8f9b2a 100644 --- a/tests/test_health.py +++ b/tests/test_health.py @@ -1,11 +1,12 @@ """Health endpoint smoke test.""" import pytest +import pytest_asyncio from backend.app import create_app -@pytest.fixture +@pytest_asyncio.fixture async def client(): app = create_app() async with app.test_client() as c: diff --git a/tests/test_tasks_register.py b/tests/test_tasks_register.py index 5d4e941..a8d4f72 100644 --- a/tests/test_tasks_register.py +++ b/tests/test_tasks_register.py @@ -1,5 +1,15 @@ -"""Confirms every FC-2a task module imports cleanly and registers with Celery.""" +"""Confirms every FC-2a task module imports cleanly and registers with Celery. +Celery's `include=[...]` parameter on the Celery() constructor is lazy — it +only imports those modules when a worker boots. To assert task registration +in a plain pytest run we explicitly import the task modules ourselves. +""" + +# Importing for side-effect: each module's @celery.task decorators register +# the task with the global Celery instance at module import time. +import backend.app.tasks.import_file # noqa: F401 +import backend.app.tasks.scan # noqa: F401 +import backend.app.tasks.thumbnail # noqa: F401 from backend.app.celery_app import celery