ifcurl/tests
Bruno Postle 9e1a10e0b6 bcf_api: implement BCF 3.0 REST API as Python routes in the preview service
Stateless translation layer over Forgejo issues and comments. Auth is
forwarded verbatim (Authorization: Bearer), so Forgejo enforces per-user
permissions with no service token. Viewpoints are ifc:// URLs stored in
comment bodies; GUIDs are deterministically derived from Forgejo IDs and
are reversible without a lookup table.

Endpoints: GET/POST projects, topics, comments, viewpoints; PUT topic;
GET viewpoint snapshot (proxied through preview service).

Also adds ifc_url_to_bcf_viewpoint() to bcf.py (symmetric counterpart of
bcf_viewpoint_to_ifc_url), and fixes rate-limit state leaking between tests.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 19:38:34 +01:00
..
conftest.py style: ruff --fix + black across ifcurl/ and tests/ 2026-04-25 08:34:56 +01:00
test_auth.py style: ruff --fix + black across ifcurl/ and tests/ 2026-04-25 08:34:56 +01:00
test_bcf.py bcf: add bcf_viewpoint_to_ifc_url() and IfcUrl.to_string() 2026-04-29 19:04:04 +01:00
test_bcf_api.py bcf_api: implement BCF 3.0 REST API as Python routes in the preview service 2026-04-29 19:38:34 +01:00
test_diff.py style: ruff --fix + black across ifcurl/ and tests/ 2026-04-25 08:34:56 +01:00
test_git.py tests: add TestCacheCli covering list, clear, and prune CLI paths 2026-04-25 20:43:43 +01:00
test_render.py style: ruff --fix + black across ifcurl/ and tests/ 2026-04-25 08:34:56 +01:00
test_sandbox.py style: ruff --fix + black across ifcurl/ and tests/ 2026-04-25 08:34:56 +01:00
test_service.py bcf_api: implement BCF 3.0 REST API as Python routes in the preview service 2026-04-29 19:38:34 +01:00
test_url.py bcf: add bcf_viewpoint_to_ifc_url() and IfcUrl.to_string() 2026-04-29 19:04:04 +01:00
test_viewer_url.mjs viewer: extract URL logic to viewer-url.js, add JS tests 2026-04-24 07:31:19 +01:00