Skip to content

Commit 23ff7c3

Browse files
authored
chore: add reproduction for #9305 (#9327)
1 parent de4e6aa commit 23ff7c3

File tree

2 files changed

+26
-2
lines changed

2 files changed

+26
-2
lines changed

packages/runner/src/types/tasks.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -536,7 +536,7 @@ export type TestAPI<ExtraContext = object> = ChainableTestAPI<ExtraContext>
536536
: never;
537537
}>
538538
scoped: (
539-
fixtures: Fixtures<Partial<ExtraContext>>,
539+
fixtures: Partial<Fixtures<ExtraContext>>,
540540
) => void
541541
}
542542

@@ -577,7 +577,7 @@ export type Fixture<T, K extends keyof T, ExtraContext = object> = ((
577577
| (T[K] extends any
578578
? FixtureFn<T, K, Omit<ExtraContext, Exclude<keyof T, K>>>
579579
: never)
580-
export type Fixtures<T extends Record<string, any>, ExtraContext = object> = {
580+
export type Fixtures<T, ExtraContext = object> = {
581581
[K in keyof T]:
582582
| Fixture<T, K, ExtraContext & TestContext>
583583
| [Fixture<T, K, ExtraContext & TestContext>, FixtureOptions?];

test/core/test/test-extend.test.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -488,6 +488,30 @@ describe('test.scoped repro #7813', () => {
488488
})
489489
})
490490

491+
describe('test.scoped repro #9305', () => {
492+
const extendedTest = test.extend<{
493+
a: number
494+
b: number
495+
numbers: number[]
496+
}>({
497+
a: 1,
498+
b: 2,
499+
numbers: async ({ a }, use) => use([a]),
500+
})
501+
502+
describe('suite fails', () => {
503+
extendedTest.scoped({
504+
numbers: async ({ a, b }, use) => use([a, b]),
505+
})
506+
507+
extendedTest.fails('test fails', async ({
508+
numbers,
509+
}) => {
510+
expect(numbers).toStrictEqual([1, 2]) // fails because numbers is [undefined, undefined]
511+
})
512+
})
513+
})
514+
491515
describe('suite with timeout', () => {
492516
test.extend({})('timeout is inherited from suite', ({ task }) => {
493517
expect(task.timeout).toBe(100)

0 commit comments

Comments
 (0)