37 lines
1.4 KiB
Python
37 lines
1.4 KiB
Python
"""Palier 16 (0.20.0) — refonte professionnelle de l'entête Projets.
|
|
|
|
Fini le « Bonjour 👋 » et les rangées éparses : titre sobre,
|
|
bande KPI unifiée, et une seule barre d'outils (onglets
|
|
segmentés, filtre, tri, regroupement, vue). Les crochets
|
|
fonctionnels (ids, liaisons Alpine) sont inchangés.
|
|
"""
|
|
|
|
|
|
def test_dashboard_professional_header(client):
|
|
r = client.get("/")
|
|
assert r.status_code == 200
|
|
# Titre sobre + sous-titre, plus de formule familière.
|
|
assert "<h1>Projets</h1>" in r.text
|
|
assert "Bonjour" not in r.text
|
|
# Bande KPI unifiée : valeurs + libellés.
|
|
assert "kpi-strip" in r.text
|
|
assert "Projets actifs" in r.text
|
|
assert "Issues fermées · 30 j" in r.text
|
|
assert "Temps de cycle moyen" in r.text
|
|
# Les KPI journal mènent à l'activité.
|
|
assert 'href="/activity"' in r.text
|
|
|
|
|
|
def test_dashboard_single_toolbar_keeps_its_hooks(client):
|
|
r = client.get("/")
|
|
assert "dash-toolbar" in r.text
|
|
# Onglets segmentés avec compteurs, mêmes liaisons Alpine.
|
|
assert "seg-tabs" in r.text
|
|
assert "seg-count" in r.text
|
|
assert "tab = 'inactive'" in r.text
|
|
# Filtre, tri, regroupement et vue : ids préservés pour
|
|
# dashboard.js et l'état Alpine.
|
|
for hook in ('id="project-search"', 'id="dash-sort"',
|
|
'id="dash-group"', "setView('list')"):
|
|
assert hook in r.text, hook
|