From c28c87c39e968dd348c82875a3d133962af4e310 Mon Sep 17 00:00:00 2001 From: Bryan Van Deusen Date: Sun, 23 Aug 2026 14:09:04 -0400 Subject: [PATCH] =?UTF-8?q?test(ledger):=20the=20consumer-map=20integratio?= =?UTF-8?q?n=20test=20owns=20its=20unreferenced=20rule=20=E2=80=94=20the?= =?UTF-8?q?=20seeded=20button.css=20row=20vanishes=20under=20the=20test's?= =?UTF-8?q?=20own=20tree=20(#2936)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5 --- tests/test_integration_shape_classify.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/test_integration_shape_classify.py b/tests/test_integration_shape_classify.py index f2d69a1..12f06db 100644 --- a/tests/test_integration_shape_classify.py +++ b/tests/test_integration_shape_classify.py @@ -696,6 +696,7 @@ async def test_consumer_map_syncs_edges_from_template_references(seeded): ("v/A.vue", "css", "error-msg", ".error-msg {", ".error-msg { color: red }"), ("v/B.vue", "css", "error-msg", ".error-msg {", ".error-msg { color: blue }"), ("assets/components.css", "css", "btn-primary", ".btn-primary {", ".btn-primary { x: 1 }"), + ("assets/orphan.css", "css", "orphan", ".orphan {", ".orphan { y: 2 }"), # no template names it ) await sync_repo_shapes(pid, REPO, defs, seen_marker="m1") refs = { @@ -712,7 +713,7 @@ async def test_consumer_map_syncs_edges_from_template_references(seeded): assert view[("v/A.vue", "error-msg")] == [("v/A.vue", 2), ("v/C.vue", 1)] assert view[("v/B.vue", "error-msg")] == [("v/B.vue", 1), ("v/C.vue", 1)] assert view[("assets/components.css", "btn-primary")] == [("v/A.vue", 1), ("v/C.vue", 4)] - assert view[("web/button.css", "btn")] == [] # the seeded row: no template names it + assert view[("assets/orphan.css", "orphan")] == [] # The next tree: C stops using error-msg, A uses btn-primary twice now. refs2 = {"v/A.vue": {"error-msg": 2, "btn-primary": 2}, "v/B.vue": {"error-msg": 1}} @@ -730,9 +731,9 @@ async def test_consumer_map_syncs_edges_from_template_references(seeded): live = [r for r in await live_rows(pid) if r.kind == "css"] used = await used_by_map(live) assert used[rows[("v/B.vue", "error-msg")]] == {"count": 1, "paths": ["v/B.vue"]} - assert used[rows[("web/button.css", "btn")]] == {"count": 0, "paths": []} + assert used[rows[("assets/orphan.css", "orphan")]] == {"count": 0, "paths": []} unused, n = await list_project_shapes(owner, pid, flag="unused-css") - assert n == 1 and [(r.path, r.symbol) for r in unused] == [("web/button.css", "btn")] + assert n == 1 and [(r.path, r.symbol) for r in unused] == [("assets/orphan.css", "orphan")] await apply_derive_groups(pid) out = await write_time_derive(pid, "v/New.vue", [("css", "error-msg")]) assert out and out[0]["family"]["consumers"] == {"count": 2, "paths": ["v/A.vue", "v/B.vue"]}