diff --git a/packages/runner/src/run.ts b/packages/runner/src/run.ts index 72d7953d35de..d7491a4b2f0d 100644 --- a/packages/runner/src/run.ts +++ b/packages/runner/src/run.ts @@ -246,11 +246,9 @@ export async function runSuite(suite: Suite, runner: VitestRunner) { suite.result.state = 'todo' } else { - let retry = suite.repeats + const retry = suite.mode === 'repeats' ? suite.repeats! : suite.retry || 1 - for (let retryCount = 0; retryCount < retry!; retryCount++) { - if (suite.mode !== 'repeats') - retry = 1 + for (let retryCount = 0; retryCount < retry; retryCount++) { try { beforeAllCleanups = await callSuiteHook(suite, suite, 'beforeAll', runner, [suite]) diff --git a/packages/vitest/src/node/reporters/renderers/listRenderer.ts b/packages/vitest/src/node/reporters/renderers/listRenderer.ts index 41552c71bc3f..13309bb3d40c 100644 --- a/packages/vitest/src/node/reporters/renderers/listRenderer.ts +++ b/packages/vitest/src/node/reporters/renderers/listRenderer.ts @@ -107,7 +107,7 @@ export function renderTree(tasks: Task[], options: ListRendererOptions, level = if (task.mode === 'skip' || task.mode === 'todo') suffix += ` ${c.dim(c.gray('[skipped]'))}` - if (task.mode === 'repeats') + if (task.type === 'suite' && task.tasks.find(t => t.mode === 'repeats')) suffix += ` ${c.dim(c.gray('[repeated]'))}` if (task.result?.duration != null) {