Coverage for polar/auth/endpoints.py: 88%
16 statements
« prev ^ index » next coverage.py v7.10.6, created at 2025-12-05 17:15 +0000
« prev ^ index » next coverage.py v7.10.6, created at 2025-12-05 17:15 +0000
1from fastapi import Depends, Request 1a
2from fastapi.responses import RedirectResponse 1a
3from pydantic import BaseModel 1a
5from polar.models import UserSession as UserSession 1a
6from polar.openapi import APITag 1a
7from polar.postgres import AsyncSession, get_db_session 1a
8from polar.routing import APIRouter 1a
10from .service import auth as auth_service 1a
12router = APIRouter(tags=["auth", APITag.private]) 1a
15class ImpersonateResponse(BaseModel): 1a
16 success: bool 1a
17 message: str 1a
20@router.get("/auth/logout") 1a
21async def logout( 1ab
22 request: Request, session: AsyncSession = Depends(get_db_session)
23) -> RedirectResponse:
24 user_session = await auth_service.authenticate(session, request)
25 return await auth_service.get_logout_response(session, request, user_session)