diff --git a/tests/test_recherche_cors.py b/tests/test_recherche_cors.py index 5ee067a..a6272c9 100644 --- a/tests/test_recherche_cors.py +++ b/tests/test_recherche_cors.py @@ -38,7 +38,7 @@ def test_origin_of(): def test_sister_origins_dev(): - # Correctif 2026-10-28 : 8 origines officielles, prod ET dev, + # Correctif 2026-10-28 : 10 origines officielles (8 sœurs + 2 agent), prod ET dev, # quelle que soit la résolution. assert sister_origins(RESOLVED_DEV) == { "https://og.dracodev.net", @@ -49,9 +49,24 @@ def test_sister_origins_dev(): "https://flowdeck-dev.dracodev.net", "https://tiktak-dev.dracodev.net", "https://kanbante-dev.dracodev.net", + "https://agent.dracodev.net", + "https://agent-dev.dracodev.net", } + +def test_cors_headers_agent_console_autorise(): + # Fédération depuis la console (2026-10-28) : les origines agent + # prod ET dev passent, avec credentials ; un tiers reste refusé. + for origine in ("https://agent.dracodev.net", + "https://agent-dev.dracodev.net"): + headers = cors_headers_for(origine, RESOLVED_DEV) + assert headers is not None + assert headers["Access-Control-Allow-Origin"] == origine + assert headers["Access-Control-Allow-Credentials"] == "true" + assert cors_headers_for("https://agent.dracodev.net.evil.example", + RESOLVED_DEV) is None + def test_sister_origins_ajoute_env_de_la_requete(): # Correctif 2026-10-28 : configuration muette, quel que soit # l'hôte de la requête, prod ET dev passent — l'hôte ne