feat: logout apaga o cookie de preferencia de linhas por pagina
This commit is contained in:
@@ -23,6 +23,7 @@ from fastapi.templating import Jinja2Templates
|
||||
from .. import rate_limit, session
|
||||
from ..auth import UsuarioLogado, autenticar_credenciais, exigir_login
|
||||
from ..csrf import exigir_csrf, token_do_contexto
|
||||
from .clientes import POR_PAGINA_COOKIE
|
||||
|
||||
router = APIRouter()
|
||||
templates = Jinja2Templates(directory="app/templates")
|
||||
@@ -95,4 +96,5 @@ def login(
|
||||
def logout(usuario: UsuarioLogado = Depends(exigir_login)):
|
||||
resposta = RedirectResponse(url="/login", status_code=303)
|
||||
resposta.delete_cookie(session.SESSION_COOKIE_NAME)
|
||||
resposta.delete_cookie(POR_PAGINA_COOKIE)
|
||||
return resposta
|
||||
|
||||
@@ -115,3 +115,13 @@ def test_post_logout_apaga_cookie_e_redireciona():
|
||||
# cookie apagado: o Set-Cookie da resposta zera o valor
|
||||
set_cookie = resposta.headers.get("set-cookie", "")
|
||||
assert session.SESSION_COOKIE_NAME in set_cookie
|
||||
|
||||
|
||||
def test_post_logout_apaga_cookie_de_preferencia_de_paginacao():
|
||||
from app.routers.clientes import POR_PAGINA_COOKIE
|
||||
|
||||
cookies = {session.SESSION_COOKIE_NAME: session.criar_token("admin", "Admin", "ADMIN")}
|
||||
resposta = client.post("/logout", data={"csrf_token": CSRF_TESTE}, cookies=cookies)
|
||||
assert resposta.status_code == 303
|
||||
set_cookie = resposta.headers.get("set-cookie", "")
|
||||
assert POR_PAGINA_COOKIE in set_cookie
|
||||
|
||||
Reference in New Issue
Block a user