fix(coverage): correct `coverageConfigDefaults` values and types (#9940) · vitest-dev/vitest@b3c992c

11

import type {

22

BenchmarkUserOptions,

3-

CoverageV8Options,

4-

ResolvedCoverageOptions,

3+

CoverageOptions,

54

UserConfig,

65

} from './node/types/config'

6+

import type { FieldsWithDefaultValues } from './node/types/coverage'

77

import os from 'node:os'

88

import { isAgent, isCI } from './utils/env'

99

@@ -25,7 +25,7 @@ export const benchmarkConfigDefaults: Required<

2525

}

26262727

// These are the generic defaults for coverage. Providers may also set some provider specific defaults.

28-

export const coverageConfigDefaults: ResolvedCoverageOptions = {

28+

export const coverageConfigDefaults: Required<Pick<CoverageOptions, FieldsWithDefaultValues>> = {

2929

provider: 'v8',

3030

enabled: false,

3131

clean: true,

@@ -34,17 +34,25 @@ export const coverageConfigDefaults: ResolvedCoverageOptions = {

3434

exclude: [],

3535

reportOnFailure: false,

3636

reporter: [

37-

['text', {}],

38-

['html', {}],

39-

['clover', {}],

40-

['json', {}],

37+

'text',

38+

'html',

39+

'clover',

40+

'json',

4141

],

4242

allowExternal: false,

4343

excludeAfterRemap: false,

4444

processingConcurrency: Math.min(

4545

20,

4646

os.availableParallelism?.() ?? os.cpus().length,

4747

),

48+

ignoreClassMethods: [],

49+

skipFull: false,

50+

watermarks: {

51+

statements: [50, 80],

52+

functions: [50, 80],

53+

branches: [50, 80],

54+

lines: [50, 80],

55+

},

4856

}

49575058

export const fakeTimersDefaults: NonNullable<UserConfig['fakeTimers']> = {

@@ -78,7 +86,7 @@ export const configDefaults: Readonly<{

7886

css: {

7987

include: never[]

8088

}

81-

coverage: CoverageV8Options

89+

coverage: CoverageOptions

8290

fakeTimers: import('@sinonjs/fake-timers').FakeTimerInstallOpts

8391

maxConcurrency: number

8492

dangerouslyIgnoreUnhandledErrors: boolean

@@ -95,7 +103,7 @@ export const configDefaults: Readonly<{

95103

isolate: true,

96104

watch: !isCI && process.stdin.isTTY && !isAgent,

97105

globals: false,

98-

environment: 'node' as const,

106+

environment: 'node',

99107

clearMocks: false,

100108

restoreMocks: false,

101109

mockReset: false,

@@ -116,7 +124,7 @@ export const configDefaults: Readonly<{

116124

css: {

117125

include: [],

118126

},

119-

coverage: coverageConfigDefaults as CoverageV8Options,

127+

coverage: coverageConfigDefaults,

120128

fakeTimers: fakeTimersDefaults,

121129

maxConcurrency: 5,

122130

dangerouslyIgnoreUnhandledErrors: false,