fix: achados da revisao final (remove TAMANHO_PAGINA morto, httponly no cookie de paginacao, limpa testes)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
9ce6bcdcad
commit
9a7d12f941
@@ -32,8 +32,6 @@ from ..normalize import (
|
||||
router = APIRouter(prefix="/clientes")
|
||||
templates = Jinja2Templates(directory="app/templates")
|
||||
|
||||
TAMANHO_PAGINA = 100
|
||||
|
||||
OPCOES_POR_PAGINA = [5, 10, 15, 20, 30, 40, 50, 100]
|
||||
POR_PAGINA_PADRAO = 15
|
||||
POR_PAGINA_COOKIE = "clientes_por_pagina"
|
||||
@@ -208,7 +206,7 @@ def listar(
|
||||
# reescrevendo o mesmo Set-Cookie em toda requisição à toa.
|
||||
resposta.set_cookie(
|
||||
POR_PAGINA_COOKIE, str(por_pagina), samesite="lax",
|
||||
secure=request.url.scheme == "https",
|
||||
secure=request.url.scheme == "https", httponly=True,
|
||||
)
|
||||
return resposta
|
||||
|
||||
|
||||
@@ -125,3 +125,8 @@ def test_post_logout_apaga_cookie_de_preferencia_de_paginacao():
|
||||
assert resposta.status_code == 303
|
||||
set_cookie = resposta.headers.get("set-cookie", "")
|
||||
assert POR_PAGINA_COOKIE in set_cookie
|
||||
# confirma que o cookie foi de fato apagado (Max-Age=0), não só regravado
|
||||
trecho_cookie = next(
|
||||
parte for parte in resposta.headers.get_list("set-cookie") if POR_PAGINA_COOKIE in parte
|
||||
)
|
||||
assert "Max-Age=0" in trecho_cookie
|
||||
|
||||
@@ -36,13 +36,10 @@ def _sem_log_real(monkeypatch):
|
||||
@pytest.fixture(autouse=True)
|
||||
def _limpar_cookies():
|
||||
"""Limpa cookies entre testes para evitar compartilhamento de estado."""
|
||||
# Salva os cookies iniciais (csrf_token deve persistir)
|
||||
csrf_token = client.cookies.get("csrf_token")
|
||||
client.cookies.clear()
|
||||
client.cookies.set("csrf_token", CSRF_TESTE)
|
||||
yield
|
||||
# Limpa novamente após o teste
|
||||
csrf_token = client.cookies.get("csrf_token")
|
||||
client.cookies.clear()
|
||||
client.cookies.set("csrf_token", CSRF_TESTE)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user