Skip to content

Commit

Permalink
move SessionLocal out of hidden if statement for CI
Browse files Browse the repository at this point in the history
  • Loading branch information
niquerio committed Sep 27, 2024
1 parent e268bd4 commit 82ecdca
Showing 1 changed file with 21 additions and 11 deletions.
32 changes: 21 additions & 11 deletions aim/digifeeds/database/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,29 @@
from aim.digifeeds.database import crud, schemas
from aim.services import S

if S.ci_on is None: # pragma: no cover
engine = create_engine(S.mysql_database)
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
# models.Base.metadata.create_all(bind=engine)
# This is here so SessionLocal won't have a problem in tests in github
if S.ci_on: # pragma: no cover
engine = create_engine(S.test_database)
else: # pragma: no cover
engine = create_engine(S.mysql_database)

SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
app = FastAPI()


# Dependency
def get_db(): # pragma: no cover
def get_db(): # pragma: no cover
db = SessionLocal()
try:
yield db
finally:
db.close()


@app.get("/items/", response_model_by_alias=False)
def get_items(in_zephir: bool | None = None, db: Session = Depends(get_db)) -> list[schemas.Item]:
def get_items(
in_zephir: bool | None = None, db: Session = Depends(get_db)
) -> list[schemas.Item]:
db_items = crud.get_items(in_zephir=in_zephir, db=db)
return db_items

Expand All @@ -32,6 +38,7 @@ def get_item(barcode: str, db: Session = Depends(get_db)) -> schemas.Item:
raise HTTPException(status_code=404, detail="Item not found")
return db_item


@app.post("/items/{barcode}", response_model_by_alias=False)
def create_item(barcode: str, db: Session = Depends(get_db)) -> schemas.Item:
item = schemas.ItemCreate(barcode=barcode)
Expand All @@ -41,18 +48,21 @@ def create_item(barcode: str, db: Session = Depends(get_db)) -> schemas.Item:
db_item = crud.add_item(item=item, db=db)
return db_item


@app.put("/items/{barcode}/status/{status_name}", response_model_by_alias=False)
def update_item(barcode: str, status_name: str, db: Session=Depends(get_db)) -> schemas.Item:
def update_item(
barcode: str, status_name: str, db: Session = Depends(get_db)
) -> schemas.Item:
db_status = crud.get_status(name=status_name, db=db)
if db_status is None:
raise HTTPException(status_code=404, detail="Status not found")
db_item = crud.get_item(barcode=barcode, db=db)
if db_item is None:
raise HTTPException(status_code=404, detail="Item not found")
return crud.add_item_status(db=db,item=db_item,status=db_status)
return crud.add_item_status(db=db, item=db_item, status=db_status)


@app.get("/statuses")
def get_statuses(db: Session=Depends(get_db)) -> list[schemas.Status]:
def get_statuses(db: Session = Depends(get_db)) -> list[schemas.Status]:
db_statuses = crud.get_statuses(db=db)
return db_statuses

return db_statuses

0 comments on commit 82ecdca

Please sign in to comment.