Coverage for app/api/v1/dependencies.py: 96%
25 statements
« prev ^ index » next coverage.py v7.14.1, created at 2026-06-16 20:06 +0000
« prev ^ index » next coverage.py v7.14.1, created at 2026-06-16 20:06 +0000
1from typing import Annotated
3from fastapi import Depends
5from app.core.database import get_session
6from app.repositories.probe_repository import ProbeRepository
7from app.services.check_service import CheckService
8from app.services.move_service import MoveService
9from sqlalchemy.ext.asyncio import AsyncSession
11from app.services.ready_service import ReadyService
12from app.services.setup_service import SetupService
15AsyncSessionDependency = Annotated[AsyncSession, Depends(get_session)]
18def get_probe_repository(session: AsyncSessionDependency) -> ProbeRepository:
19 return ProbeRepository(session=session)
22ProbeRepositoryDependency = Annotated[ProbeRepository, Depends(get_probe_repository)]
25def get_setup_service(repository: ProbeRepositoryDependency) -> SetupService:
26 return SetupService(repository)
29def get_move_service(repository: ProbeRepositoryDependency) -> MoveService:
30 return MoveService(repository)
33def get_check_service(repository: ProbeRepositoryDependency) -> CheckService:
34 return CheckService(repository)
37def get_ready_service(repository: ProbeRepositoryDependency) -> ReadyService:
38 return ReadyService(repository)
41MoveServiceDependency = Annotated[
42 MoveService,
43 Depends(get_move_service),
44]
46CheckServiceDependency = Annotated[
47 CheckService,
48 Depends(get_check_service),
49]
51SetupServiceDependency = Annotated[
52 SetupService,
53 Depends(get_setup_service),
54]
56ReadyServiceDependency = Annotated[
57 ReadyService,
58 Depends(get_ready_service),
59]