diff --git a/packages/coverage-c8/src/provider.ts b/packages/coverage-c8/src/provider.ts index 71ab00461f82..fe2dc132d25f 100644 --- a/packages/coverage-c8/src/provider.ts +++ b/packages/coverage-c8/src/provider.ts @@ -34,7 +34,7 @@ export class C8CoverageProvider implements CoverageProvider { async clean(clean = true) { if (clean && existsSync(this.options.reportsDirectory)) - await fs.rm(this.options.reportsDirectory, { recursive: true, force: true }) + await fs.rm(this.options.reportsDirectory, { recursive: true, force: true, maxRetries: 10 }) if (!existsSync(this.options.tempDirectory)) await fs.mkdir(this.options.tempDirectory, { recursive: true }) @@ -131,7 +131,7 @@ export class C8CoverageProvider implements CoverageProvider { // There will still be a temp directory with some reports when vitest exists, // but at least it will only contain reports of vitest's internal functions. if (existsSync(this.options.tempDirectory)) - await fs.rm(this.options.tempDirectory, { recursive: true, force: true }) + await fs.rm(this.options.tempDirectory, { recursive: true, force: true, maxRetries: 10 }) } } function resolveC8Options(options: CoverageC8Options, root: string) { diff --git a/packages/coverage-istanbul/src/provider.ts b/packages/coverage-istanbul/src/provider.ts index 25596de38031..77e4e5602be8 100644 --- a/packages/coverage-istanbul/src/provider.ts +++ b/packages/coverage-istanbul/src/provider.ts @@ -93,7 +93,7 @@ export class IstanbulCoverageProvider implements CoverageProvider { async clean(clean = true) { if (clean && existsSync(this.options.reportsDirectory)) - await fs.rm(this.options.reportsDirectory, { recursive: true, force: true }) + await fs.rm(this.options.reportsDirectory, { recursive: true, force: true, maxRetries: 10 }) this.coverages = [] }