From 0269d764c74e6ad6462afe1bb59b9a4a9306634a Mon Sep 17 00:00:00 2001 From: "gaoyuan.1226" Date: Thu, 20 Nov 2025 11:20:39 +0800 Subject: [PATCH 1/2] fix: describe.each type error --- e2e/describe/each.test.ts | 20 +++++++++++++++++++- packages/core/src/types/api.ts | 3 +++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/e2e/describe/each.test.ts b/e2e/describe/each.test.ts index 9d9a8b394..ec08061c9 100644 --- a/e2e/describe/each.test.ts +++ b/e2e/describe/each.test.ts @@ -3,7 +3,7 @@ import { afterAll, describe, expect, it } from '@rstest/core'; const logs: string[] = []; afterAll(() => { - expect(logs.length).toBe(6); + expect(logs.length).toBe(7); }); describe.each([ @@ -27,3 +27,21 @@ describe.each([ logs.push('executed'); }); }); +interface TestCase { + name: string; + targets: string[]; +} + +const TEST_CASES: TestCase[] = [ + { + name: 'react-16', + targets: ['node'], + }, +]; + +describe.each(TEST_CASES)('test case $name', ({ name, targets }) => { + it(`should run ${name}`, () => { + expect(targets).toBeDefined(); + logs.push('executed'); + }); +}); diff --git a/packages/core/src/types/api.ts b/packages/core/src/types/api.ts index 3ab263732..45719b600 100644 --- a/packages/core/src/types/api.ts +++ b/packages/core/src/types/api.ts @@ -65,6 +65,9 @@ export interface DescribeEachFn { ( cases: readonly T[], ): (description: string, fn: (...args: [...T]) => MaybePromise) => void; + ( + cases: readonly T[], + ): (description: string, fn: (...args: T[]) => MaybePromise) => void; } export type DescribeForFn = ( From 47fa5adc8836d4e3de71b50681e745cbf77ab137 Mon Sep 17 00:00:00 2001 From: 9aoy Date: Thu, 20 Nov 2025 11:24:21 +0800 Subject: [PATCH 2/2] Update packages/core/src/types/api.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- packages/core/src/types/api.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/types/api.ts b/packages/core/src/types/api.ts index 45719b600..865969f68 100644 --- a/packages/core/src/types/api.ts +++ b/packages/core/src/types/api.ts @@ -67,7 +67,7 @@ export interface DescribeEachFn { ): (description: string, fn: (...args: [...T]) => MaybePromise) => void; ( cases: readonly T[], - ): (description: string, fn: (...args: T[]) => MaybePromise) => void; + ): (description: string, fn: (param: T) => MaybePromise) => void; } export type DescribeForFn = (