test: tighten unit vitest config assertions

This commit is contained in:
Peter Steinberger
2026-05-09 10:45:04 +01:00
parent d479216d92
commit ff3cb2930f

View File

@@ -87,14 +87,15 @@ describe("unit vitest config", () => {
it("keeps acp and ui tests out of the generic unit lane", () => { it("keeps acp and ui tests out of the generic unit lane", () => {
const unitConfig = createUnitVitestConfig({}); const unitConfig = createUnitVitestConfig({});
const testConfig = requireTestConfig(unitConfig); const testConfig = requireTestConfig(unitConfig);
expect(testConfig.exclude).toEqual(expect.arrayContaining(["extensions/**", "test/**"])); expect(testConfig.exclude).toContain("extensions/**");
expect(testConfig.include).not.toEqual( expect(testConfig.exclude).toContain("test/**");
expect.arrayContaining([ for (const pattern of [
"ui/src/ui/app-chat.test.ts", "ui/src/ui/app-chat.test.ts",
"ui/src/ui/chat/**/*.test.ts", "ui/src/ui/chat/**/*.test.ts",
"ui/src/ui/views/chat.test.ts", "ui/src/ui/views/chat.test.ts",
]), ]) {
); expect(testConfig.include).not.toContain(pattern);
}
}); });
it("narrows the active include list to CLI file filters when present", () => { it("narrows the active include list to CLI file filters when present", () => {
@@ -126,35 +127,27 @@ describe("unit vitest config", () => {
}, },
); );
const testConfig = requireTestConfig(unitConfig); const testConfig = requireTestConfig(unitConfig);
expect(testConfig.exclude).toEqual( expect(testConfig.exclude).toContain("src/commands/**");
expect.arrayContaining(["src/commands/**", "src/config/**", "src/security/**"]), expect(testConfig.exclude).toContain("src/config/**");
); expect(testConfig.exclude).toContain("src/security/**");
}); });
it("scopes default coverage to source files owned by the unit lane", () => { it("scopes default coverage to source files owned by the unit lane", () => {
const unitConfig = createUnitVitestConfig({}); const unitConfig = createUnitVitestConfig({});
const testConfig = requireTestConfig(unitConfig); const testConfig = requireTestConfig(unitConfig);
const coverageInclude = testConfig.coverage?.include; const coverageInclude = testConfig.coverage?.include;
expect(coverageInclude).toEqual( expect(coverageInclude).toContain("src/commitments/runtime.ts");
expect.arrayContaining([ expect(coverageInclude).toContain("src/media-generation/runtime-shared.ts");
"src/commitments/runtime.ts", expect(coverageInclude).toContain("src/web-search/runtime.ts");
"src/media-generation/runtime-shared.ts", expect(coverageInclude).not.toContain("src/markdown/render.ts");
"src/web-search/runtime.ts", expect(coverageInclude).not.toContain("src/security/audit-workspace-skills.ts");
]),
);
expect(coverageInclude).not.toEqual(
expect.arrayContaining(["src/markdown/render.ts", "src/security/audit-workspace-skills.ts"]),
);
}); });
it("derives default coverage includes from non-fast unit tests with sibling source files", () => { it("derives default coverage includes from non-fast unit tests with sibling source files", () => {
expect(resolveDefaultUnitCoverageIncludePatterns()).toEqual( const coverageInclude = resolveDefaultUnitCoverageIncludePatterns();
expect.arrayContaining([ expect(coverageInclude).toContain("packages/memory-host-sdk/src/host/embeddings.ts");
"packages/memory-host-sdk/src/host/embeddings.ts", expect(coverageInclude).toContain("src/commitments/store.ts");
"src/commitments/store.ts", expect(coverageInclude).toContain("src/tools/planner.ts");
"src/tools/planner.ts",
]),
);
}); });
it("leaves coverage include filters unset for explicit unit include lists", () => { it("leaves coverage include filters unset for explicit unit include lists", () => {
@@ -187,15 +180,11 @@ describe("unit vitest config", () => {
"src/plugin-sdk/facade-runtime.test.ts", "src/plugin-sdk/facade-runtime.test.ts",
"src/plugins/loader.test.ts", "src/plugins/loader.test.ts",
]); ]);
expect(testConfig.exclude).not.toEqual( expect(testConfig.exclude).not.toContain("src/infra/**");
expect.arrayContaining([ expect(testConfig.exclude).not.toContain("src/plugin-sdk/**");
"src/infra/**", expect(testConfig.exclude).not.toContain("src/plugins/**");
"src/plugin-sdk/**", expect(testConfig.exclude).not.toContain("src/infra/matrix-plugin-helper.test.ts");
"src/plugins/**", expect(testConfig.exclude).not.toContain("src/plugin-sdk/facade-runtime.test.ts");
"src/infra/matrix-plugin-helper.test.ts", expect(testConfig.exclude).not.toContain("src/plugins/loader.test.ts");
"src/plugin-sdk/facade-runtime.test.ts",
"src/plugins/loader.test.ts",
]),
);
}); });
}); });