diff --git a/src/signals/engine.ts b/src/signals/engine.ts index 939f852b3e..c00358fb5c 100644 --- a/src/signals/engine.ts +++ b/src/signals/engine.ts @@ -5474,7 +5474,8 @@ function isTestFile(file: string): boolean { /(^|\/)src\/test\//i.test(file) || /(^|\/)[^/]+_test\.(go|py|rb)$/i.test(file) || /(^|\/)[^/]+_spec\.rb$/i.test(file) || - /\.(test|spec)\.(ts|tsx|js|jsx|py|rb|rs)$/i.test(file) + /\.(test|spec)\.(ts|tsx|js|jsx|py|rb|rs)$/i.test(file) || + /(^|\/)testdata\//i.test(file) ); } diff --git a/src/signals/test-evidence.ts b/src/signals/test-evidence.ts index 928dff87a9..e905040240 100644 --- a/src/signals/test-evidence.ts +++ b/src/signals/test-evidence.ts @@ -6,7 +6,8 @@ export function isTestPath(file: string): boolean { /(^|\/)[^/]+_spec\.rb$/i.test(file) || /\.(test|spec)\.(ts|tsx|js|jsx|py|rb|rs)$/i.test(file) || /(^|\/)[^/]+\.(cy|e2e)\.(ts|tsx|js|jsx)$/i.test(file) || - /(^|\/)__snapshots__\//i.test(file) + /(^|\/)__snapshots__\//i.test(file) || + /(^|\/)testdata\//i.test(file) ); } diff --git a/test/unit/local-branch-file-classifiers.test.ts b/test/unit/local-branch-file-classifiers.test.ts index 45c0589aa1..a7b277c8dd 100644 --- a/test/unit/local-branch-file-classifiers.test.ts +++ b/test/unit/local-branch-file-classifiers.test.ts @@ -88,6 +88,7 @@ describe("isTestFile", () => { it("delegates to test-evidence isTestPath so matchers stay in sync", () => { expect(isTestFile("tests/integration/api.test.ts")).toBe(true); + expect(isTestFile("pkg/auth/testdata/golden.json")).toBe(true); }); }); diff --git a/test/unit/test-evidence.test.ts b/test/unit/test-evidence.test.ts index f0997c4b5b..393c6ec8cc 100644 --- a/test/unit/test-evidence.test.ts +++ b/test/unit/test-evidence.test.ts @@ -13,6 +13,9 @@ describe("test evidence helpers", () => { expect(isTestPath("playwright/smoke.spec.ts")).toBe(true); expect(isTestPath("cypress/e2e/checkout.cy.js")).toBe(true); expect(isTestPath("components/__snapshots__/Card.tsx.snap")).toBe(true); + expect(isTestPath("pkg/auth/testdata/golden.json")).toBe(true); + expect(isTestPath("internal/widget/testdata/input.txt")).toBe(true); + expect(isTestPath("src/testdata/client.ts")).toBe(true); expect(isTestPath("src/state.snap")).toBe(false); expect(isTestPath("src/widget.rs")).toBe(false); }); @@ -22,6 +25,8 @@ describe("test evidence helpers", () => { expect(isTestPath("src/playwright/client.ts")).toBe(false); expect(isTestPath("src/cypress/client.ts")).toBe(false); expect(isTestPath("src/e2e/client.ts")).toBe(false); + expect(isTestPath("src/contestdata/client.ts")).toBe(false); + expect(isTestPath("src/testdatabase/client.ts")).toBe(false); expect(isTestPath("src/integration/auth.test.ts")).toBe(true); expect(isTestPath("src/playwright/client.e2e.ts")).toBe(true); expect(isTestPath("src/cypress/client.cy.ts")).toBe(true);