diff --git a/packages/utils/mocks/sink.mock.ts b/packages/utils/mocks/sink.mock.ts index 22b06b5b9..13d89e91c 100644 --- a/packages/utils/mocks/sink.mock.ts +++ b/packages/utils/mocks/sink.mock.ts @@ -1,4 +1,4 @@ -import type { Sink } from '../src/lib/sink-source.types'; +import type { Sink } from '../src/lib/sink-source.type'; export class MockSink implements Sink { private writtenItems: string[] = []; diff --git a/packages/utils/src/lib/performance-observer.ts b/packages/utils/src/lib/performance-observer.ts index 6b360d0da..69a614d84 100644 --- a/packages/utils/src/lib/performance-observer.ts +++ b/packages/utils/src/lib/performance-observer.ts @@ -5,7 +5,7 @@ import { type PerformanceObserverEntryList, performance, } from 'node:perf_hooks'; -import type { Buffered, Encoder, Observer, Sink } from './sink-source.types.js'; +import type { Buffered, Encoder, Observer, Sink } from './sink-source.type'; export const DEFAULT_FLUSH_THRESHOLD = 20; diff --git a/packages/utils/src/lib/sink-source.types.ts b/packages/utils/src/lib/sink-source.type.ts similarity index 100% rename from packages/utils/src/lib/sink-source.types.ts rename to packages/utils/src/lib/sink-source.type.ts diff --git a/testing/test-setup-config/src/lib/vitest-config-factory.ts b/testing/test-setup-config/src/lib/vitest-config-factory.ts index 66e349ed1..0723f72b3 100644 --- a/testing/test-setup-config/src/lib/vitest-config-factory.ts +++ b/testing/test-setup-config/src/lib/vitest-config-factory.ts @@ -31,7 +31,33 @@ function buildCoverageConfig( return undefined; } - const exclude = ['mocks/**', '**/types.ts', 'perf/**']; + const exclude = [ + 'tests/**', + 'perf/**', + // Mocks and fixtures + 'mocks/**', + '**/fixtures/**', + '**/*.mock.ts', + '**/*.fixture.ts', + // Config files + '**/vitest.*.config.ts', + '**/vitest.config.ts', + '**/code-pushup.config.ts', + '**/*.config.ts', + // Barrel files (index files that only re-export) + '**/index.ts', + '**/index.js', + '**/index.mjs', + // Model files + '**/models.ts', + '**/*.model.ts', + '**/types.ts', + '**/*.type.ts', + // Constants + '**/constants.ts', + // typings + '**/*.d.ts', + ]; const reportsDirectory = `../../coverage/${projectKey}/${kind}-tests`; return { diff --git a/testing/test-setup-config/src/lib/vitest-config-factory.unit.test.ts b/testing/test-setup-config/src/lib/vitest-config-factory.unit.test.ts index 3afa4b1fa..a92a3e4bf 100644 --- a/testing/test-setup-config/src/lib/vitest-config-factory.unit.test.ts +++ b/testing/test-setup-config/src/lib/vitest-config-factory.unit.test.ts @@ -38,7 +38,27 @@ describe('createVitestConfig', () => { coverage: expect.objectContaining({ reporter: ['text', 'lcov'], reportsDirectory: '../../coverage/test-package/unit-tests', - exclude: ['mocks/**', '**/types.ts', 'perf/**'], + exclude: [ + 'tests/**', + 'perf/**', + 'mocks/**', + '**/fixtures/**', + '**/*.mock.ts', + '**/*.fixture.ts', + '**/vitest.*.config.ts', + '**/vitest.config.ts', + '**/code-pushup.config.ts', + '**/*.config.ts', + '**/index.ts', + '**/index.js', + '**/index.mjs', + '**/models.ts', + '**/*.model.ts', + '**/types.ts', + '**/*.type.ts', + '**/constants.ts', + '**/*.d.ts', + ], }), typecheck: { include: ['**/*.type.test.ts'] }, }), @@ -270,9 +290,25 @@ describe('createVitestConfig', () => { const config = createVitestConfig('test-package', 'unit'); expect(config.test!.coverage!.exclude).toEqual([ + 'tests/**', + 'perf/**', 'mocks/**', + '**/fixtures/**', + '**/*.mock.ts', + '**/*.fixture.ts', + '**/vitest.*.config.ts', + '**/vitest.config.ts', + '**/code-pushup.config.ts', + '**/*.config.ts', + '**/index.ts', + '**/index.js', + '**/index.mjs', + '**/models.ts', + '**/*.model.ts', '**/types.ts', - 'perf/**', + '**/*.type.ts', + '**/constants.ts', + '**/*.d.ts', ]); }); });