Skip to content

Commit 4f37369

Browse files
authored
test(angular-query-experimental/injectQuery): add test for 'select' option transforming 'queryFn' data (TanStack#10586)
1 parent 20fc6c2 commit 4f37369

1 file changed

Lines changed: 24 additions & 0 deletions

File tree

packages/angular-query-experimental/src/__tests__/inject-query.test.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -356,6 +356,30 @@ describe('injectQuery', () => {
356356
expect(rendered.getByText('failureReason: Some error')).toBeInTheDocument()
357357
})
358358

359+
it('should be able to select a part of the data with select', async () => {
360+
const key = queryKey()
361+
362+
@Component({
363+
template: `<div>data: {{ query.data() ?? 'none' }}</div>`,
364+
})
365+
class Page {
366+
readonly query = injectQuery<{ name: string }, Error, string>(() => ({
367+
queryKey: key,
368+
queryFn: () => sleep(10).then(() => ({ name: 'test' })),
369+
select: (data) => data.name,
370+
}))
371+
}
372+
373+
const rendered = await render(Page)
374+
375+
expect(rendered.getByText('data: none')).toBeInTheDocument()
376+
377+
await vi.advanceTimersByTimeAsync(11)
378+
rendered.fixture.detectChanges()
379+
380+
expect(rendered.getByText('data: test')).toBeInTheDocument()
381+
})
382+
359383
it('should update query on options contained signal change', async () => {
360384
const key1 = queryKey()
361385
const key2 = queryKey()

0 commit comments

Comments
 (0)