feat: page publique /a-propos/roadmap (lecture seule) #94
This commit is contained in:
@@ -23,6 +23,11 @@ SECTIONS = [
|
||||
"label": "Abonnement",
|
||||
"href": "/a-propos/abonnement",
|
||||
},
|
||||
{
|
||||
"key": "roadmap",
|
||||
"label": "Roadmap",
|
||||
"href": "/a-propos/roadmap",
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
from dash import register_page
|
||||
|
||||
from src.pages._apropos_shell import apropos_shell
|
||||
from src.roadmap import ui as roadmap_ui
|
||||
from src.utils.seo import META_CONTENT
|
||||
|
||||
register_page(
|
||||
__name__,
|
||||
path="/a-propos/roadmap",
|
||||
title="Roadmap | À propos | decp.info",
|
||||
description="Les prochaines fonctionnalités de decp.info, soumises au vote des abonnés.",
|
||||
image_url=META_CONTENT["image_url"],
|
||||
)
|
||||
|
||||
|
||||
def layout(**_):
|
||||
return apropos_shell("roadmap", roadmap_ui.roadmap_content(editable=False))
|
||||
@@ -0,0 +1,19 @@
|
||||
def test_public_layout_renders_read_only(monkeypatch):
|
||||
from src.roadmap import ui as roadmap_ui
|
||||
|
||||
monkeypatch.setattr(
|
||||
roadmap_ui.github,
|
||||
"fetch_roadmap_issues",
|
||||
lambda: {
|
||||
"en_cours": [],
|
||||
"au_vote": [{"number": 1, "title": "Feature publique", "html_url": "u1"}],
|
||||
},
|
||||
)
|
||||
monkeypatch.setattr(roadmap_ui.roadmap_db, "vote_counts", lambda: {1: 4})
|
||||
|
||||
from src.pages.a_propos import roadmap
|
||||
|
||||
layout = roadmap.layout()
|
||||
s = str(layout)
|
||||
assert "Feature publique" in s
|
||||
assert "Voter" not in s # lecture seule : aucun bouton
|
||||
Reference in New Issue
Block a user