import sqlalchemy.util.concurrency as concurrency def test_greenlet_is_installed_for_async_sqlalchemy(): # Async engine (create_async_engine + run_sync в alembic/env.py) требует greenlet. # SQLAlchemy не ставит его сам на arm64 и на Python >= 3.13, поэтому зависимость # объявлена явно через extra sqlalchemy[asyncio] в requirements-dev.txt. assert concurrency.have_greenlet, ( "greenlet не установлен: async-движок SQLAlchemy не будет работать. " "Установите зависимости через api/requirements-dev.txt (extra sqlalchemy[asyncio])." )