generated from coulomb/repo-seed
22 lines
953 B
Python
22 lines
953 B
Python
from api.routers import policy
|
|
|
|
|
|
async def test_policy_router_reads_and_updates_policy(client, tmp_path, monkeypatch) -> None:
|
|
monkeypatch.setattr(policy, "POLICY_DIR", tmp_path)
|
|
(tmp_path / "example.md").write_text("old content")
|
|
read_response = await client.get("/policy/example")
|
|
update_response = await client.put("/policy/example", json={"content": "new content"})
|
|
|
|
assert read_response.status_code == 200
|
|
assert read_response.json() == {"name": "example", "content": "old content"}
|
|
assert update_response.status_code == 200
|
|
assert update_response.json() == {"name": "example", "content": "new content"}
|
|
assert (tmp_path / "example.md").read_text() == "new content"
|
|
|
|
|
|
async def test_policy_router_rejects_invalid_policy_name(client, tmp_path, monkeypatch) -> None:
|
|
monkeypatch.setattr(policy, "POLICY_DIR", tmp_path)
|
|
response = await client.get("/policy/BadName")
|
|
|
|
assert response.status_code == 400
|