Coverage for app/services/todo_service.py: 100%
20 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
1from sqlalchemy.orm import Session
2from app.repository import todo_repo
3from app.schemas.todo_schema import TodoCreate
5def create_todo_service(db: Session, todo_in: TodoCreate):
6 return todo_repo.create_todo(db, todo_in.name, todo_in.description)
8def get_all_todos_service(db: Session):
9 return todo_repo.get_all_todos(db)
11def get_todo_by_id_service(db: Session, todo_id: int):
12 return todo_repo.get_todo_by_id(db, todo_id)
14def update_todo_service(db: Session, todo_id: int, data: TodoCreate):
15 todo = todo_repo.get_todo_by_id(db, todo_id)
16 if not todo:
17 return None
18 return todo_repo.update_todo(db, todo, data.name, data.description)
20def delete_todo_service(db: Session, todo_id: int):
21 todo = todo_repo.get_todo_by_id(db, todo_id)
22 if not todo:
23 return False
24 todo_repo.delete_todo(db, todo)
25 return True