test(ui): assert public prop exports are detected

This commit is contained in:
vince 2026-06-20 07:40:52 +02:00
parent 2535dccff2
commit 5dccd70e0b

View file

@ -138,14 +138,20 @@ describe("Storybook inventory", () => {
});
test("exports component prop interfaces through grouped package entrypoints", () => {
let propInterfaceCount = 0;
for (const component of componentInventory()) {
const source = readFileSync(component.path, "utf8");
const propTypeName = `${component.name}Props`;
const propExportPattern = new RegExp(
`export\\s+(interface|type)\\s+${propTypeName}\\b`,
);
if (!source.match(new RegExp(`export\\\\s+(interface|type)\\\\s+${propTypeName}\\\\b`))) {
if (!propExportPattern.test(source)) {
continue;
}
propInterfaceCount += 1;
const domainIndexSource = readFileSync(
join(componentsDir, component.domain, "index.ts"),
"utf8",
@ -155,6 +161,8 @@ describe("Storybook inventory", () => {
`export * from "./${component.name}";`,
);
}
expect(propInterfaceCount).toBeGreaterThan(0);
});
test("keeps Storybook fixtures generic and content-free", () => {