ifcurl/tests
Bruno Postle caf303d3ed Add checkout.py: writable working-tree checkouts from bare cache
Implements ifcurl-5oo. get_checkout() ensures the bare cache is current via
fetch_ifc(), then clones it locally to <cache_dir>/checkout/ (no network),
and places it at the resolved commit as a detached HEAD — forcing branch
creation before any commit. Viewer artefact patterns (*.ifcview, *.rdbview,
etc.) are appended to .git/info/exclude so they are locally ignored without
touching the repo's own .gitignore. When a newer commit is requested, the
checkout fetches from origin (the local bare cache) using the default refspec
to avoid git's "refusing to fetch into checked-out branch" error. Unblocks
the JSON-RPC connector (ifcurl-242).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-05 23:38:13 +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: add topic filtering; documents_api: add GET /document-metadata 2026-04-29 22:24:52 +01:00
test_checkout.py Add checkout.py: writable working-tree checkouts from bare cache 2026-06-05 23:38:13 +01:00
test_diff.py style: ruff --fix + black across ifcurl/ and tests/ 2026-04-25 08:34:56 +01:00
test_discover.py Add discover.py: find local repos matching a project by genesis commit 2026-06-05 23:05:33 +01:00
test_documents_api.py bcf_api: add topic filtering; documents_api: add GET /document-metadata 2026-04-29 22:24:52 +01:00
test_git.py Add get_genesis_commit: root commit hash as project identity key 2026-06-05 18:32:54 +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 url.py, test_url.py: add query parameter and visibility=clash 2026-05-09 07:27:35 +00:00
test_viewer_url.mjs viewer: extract URL logic to viewer-url.js, add JS tests 2026-04-24 07:31:19 +01:00