import { describe, expect, it } from "vitest"; import { buildCompositionCensus, renderCompositionCensusBlock } from "./compositionCensus.js"; const MINIMAL_HTML = `
`; const RICH_HTML = `
`; describe("buildCompositionCensus", () => { it("counts zero media on a minimal composition", () => { const c = buildCompositionCensus(MINIMAL_HTML); expect(c.elementCensus).toEqual({ video: 0, audio: 0, img: 0, svg: 0, canvas: 0, subCompositionMounts: 0, }); expect(c.timelineShape.nested).toBe(false); expect(c.timelineShape.subCompositionCount).toBe(0); expect(c.timelineShape.usesGsap).toBe(false); expect(c.timelineShape.usesDataTimeline).toBe(true); }); it("counts each element category on a rich composition", () => { const c = buildCompositionCensus(RICH_HTML); expect(c.elementCensus).toEqual({ video: 2, audio: 1, img: 3, svg: 1, canvas: 1, subCompositionMounts: 2, }); }); it("detects structural attributes from both inline style and