Skip to content

Commit efde6ed

Browse files
committed
test(angular): add missing skip token test
1 parent afdf617 commit efde6ed

1 file changed

Lines changed: 17 additions & 1 deletion

File tree

‎packages/angular-query/src/__tests__/inject-query.test-d.ts‎

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1+
import { signal } from '@angular/core'
12
import { describe, expectTypeOf, it } from 'vitest'
23
import { sleep } from '@tanstack/query-test-utils'
3-
import { injectQuery, queryOptions, toResource } from '..'
4+
import { injectQuery, queryOptions, skipToken, toResource } from '..'
45
import type { CreateQueryOptions, CreateQueryResult } from '..'
56
import type { Resource, Signal } from '@angular/core'
67

@@ -255,3 +256,18 @@ describe('injectQuery options', () => {
255256
expectTypeOf<CreateQueryOptions>().not.toHaveProperty('throwOnError')
256257
})
257258
})
259+
260+
describe('skipToken', () => {
261+
it('should narrow data to string | undefined for a conditional skipToken inside a whole-options getter', () => {
262+
const postId = signal<number | undefined>(undefined)
263+
const query = injectQuery(() => ({
264+
queryKey: ['posts', postId()],
265+
queryFn:
266+
postId() != null
267+
? () => Promise.resolve(`post ${postId()}`)
268+
: skipToken,
269+
}))
270+
271+
expectTypeOf(query.data).toEqualTypeOf<Signal<string | undefined>>()
272+
})
273+
})

0 commit comments

Comments
 (0)