diff --git a/packages/runner/src/run.ts b/packages/runner/src/run.ts index 46b7fe795ae6..e1a54e34805f 100644 --- a/packages/runner/src/run.ts +++ b/packages/runner/src/run.ts @@ -183,6 +183,7 @@ export async function runTest(test: Test | Custom, runner: VitestRunner) { test.mode = 'skip' test.result = { state: 'skip' } updateTask(test, runner) + setCurrentTest(undefined) return } diff --git a/test/core/test/skip-reset-state.test.ts b/test/core/test/skip-reset-state.test.ts new file mode 100644 index 000000000000..1c6e18db93da --- /dev/null +++ b/test/core/test/skip-reset-state.test.ts @@ -0,0 +1,11 @@ +import { getCurrentTest } from '@vitest/runner' +import { afterAll, expect, test } from 'vitest' + +afterAll(() => { + // verify "current test" resets after "skip" + expect(getCurrentTest()).toBeUndefined() +}) + +test('single skipped test', ({ skip }) => { + skip() +})