Coverage for app/core/database.py: 100%
7 statements
« prev ^ index » next coverage.py v7.9.2, created at 2025-07-18 02:28 +0000
« prev ^ index » next coverage.py v7.9.2, created at 2025-07-18 02:28 +0000
1import os
2from sqlalchemy import create_engine
3from sqlalchemy.orm import sessionmaker, declarative_base
5DATABASE_URL = os.getenv("DATABASE_URL", "sqlite:///:memory:")
7engine = create_engine(
8 DATABASE_URL,
9 connect_args={"check_same_thread": False} if "sqlite" in DATABASE_URL else {},
10)
11SessionLocal = sessionmaker(bind=engine, autocommit=False, autoflush=False)
12Base = declarative_base()
15def get_db(): # pragma: no cover
16 db = SessionLocal()
17 try:
18 yield db
19 finally:
20 db.close()