import { List, namekey } from "@alloy-js/core"; import { expect, it } from "vitest"; import { CommaList, ObjectExpression, ObjectProperty, ObjectSpreadProperty, } from "../src/index.js"; import { TestFile } from "./utils.js"; it("from js value", () => { expect( , ).toRenderTo(` { a: 1, b: 2, } `); }); it("from object property", () => { const comp = ( ); expect({comp}).toRenderTo(` { a: 1, b: 2 } `); }); it("spread property", () => { const comp = ( abc ); expect({comp}).toRenderTo(` { ...abc } `); }); it("Works with both children and jsvalue", () => { const comp = ( ); expect({comp}).toRenderTo(` { a: 1, b: 2, c: 3 } `); }); it("Handles name conflicts and namekeys", () => { const nk1 = namekey("a"); const nk2 = namekey("a"); const nk3 = namekey("a", { ignoreNameConflict: true }); const comp = ( ); expect({comp}).toRenderTo(` { a: 3, a_2: 1, a: 1, } `); });