|
|
|
@ -315,6 +315,18 @@ describe('UIX layer contracts', () => {
|
|
|
|
expect(missingExports).toEqual([]);
|
|
|
|
expect(missingExports).toEqual([]);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
it('guards Soma Provider exports use the canonical root wrapper filename', () => {
|
|
|
|
|
|
|
|
const violations = collectPublicSomaComponentDirs()
|
|
|
|
|
|
|
|
.filter((dir) => {
|
|
|
|
|
|
|
|
const source = readFileSync(join(HERE, 'soma', 'components', dir, 'exports.ts'), 'utf8');
|
|
|
|
|
|
|
|
const expected = `export { default as Provider } from './components/${dir}.svelte';`;
|
|
|
|
|
|
|
|
return !source.includes(expected);
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
.map((dir) => `${dir}/exports.ts`);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
expect(violations).toEqual([]);
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
it('guards Soma public barrels from provider implementation filenames', () => {
|
|
|
|
it('guards Soma public barrels from provider implementation filenames', () => {
|
|
|
|
const violations = collectPublicSomaComponentDirs()
|
|
|
|
const violations = collectPublicSomaComponentDirs()
|
|
|
|
.map((dir) => join(HERE, 'soma', 'components', dir, 'exports.ts'))
|
|
|
|
.map((dir) => join(HERE, 'soma', 'components', dir, 'exports.ts'))
|
|
|
|
|