Skip to content

Commit 0f339c1

Browse files
authored
test(angular-query-experimental/injectQueries): switch 'isRestoring' test to '@component' + 'render' pattern (#10563)
1 parent e236194 commit 0f339c1

1 file changed

Lines changed: 32 additions & 16 deletions

File tree

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

Lines changed: 32 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -147,32 +147,48 @@ describe('injectQueries', () => {
147147
providers: [provideIsRestoring(signal(true).asReadonly())],
148148
})
149149

150-
const queries = TestBed.runInInjectionContext(() =>
151-
injectQueries(() => ({
150+
@Component({
151+
template: `
152+
<div>
153+
status1: {{ queries()[0].status() }}, fetchStatus1:
154+
{{ queries()[0].fetchStatus() }}
155+
</div>
156+
<div>
157+
status2: {{ queries()[1].status() }}, fetchStatus2:
158+
{{ queries()[1].fetchStatus() }}
159+
</div>
160+
`,
161+
})
162+
class Page {
163+
queries = injectQueries(() => ({
152164
queries: [
153165
{ queryKey: key1, queryFn: queryFn1 },
154166
{ queryKey: key2, queryFn: queryFn2 },
155167
],
156-
})),
157-
)
168+
}))
169+
}
170+
171+
const rendered = await render(Page)
158172

159173
await vi.advanceTimersByTimeAsync(0)
160-
expect(queries()[0].status()).toBe('pending')
161-
expect(queries()[0].fetchStatus()).toBe('idle')
162-
expect(queries()[0].data()).toBeUndefined()
163-
expect(queries()[1].status()).toBe('pending')
164-
expect(queries()[1].fetchStatus()).toBe('idle')
165-
expect(queries()[1].data()).toBeUndefined()
174+
rendered.fixture.detectChanges()
175+
expect(
176+
rendered.getByText('status1: pending, fetchStatus1: idle'),
177+
).toBeInTheDocument()
178+
expect(
179+
rendered.getByText('status2: pending, fetchStatus2: idle'),
180+
).toBeInTheDocument()
166181
expect(queryFn1).toHaveBeenCalledTimes(0)
167182
expect(queryFn2).toHaveBeenCalledTimes(0)
168183

169184
await vi.advanceTimersByTimeAsync(11)
170-
expect(queries()[0].status()).toBe('pending')
171-
expect(queries()[0].fetchStatus()).toBe('idle')
172-
expect(queries()[0].data()).toBeUndefined()
173-
expect(queries()[1].status()).toBe('pending')
174-
expect(queries()[1].fetchStatus()).toBe('idle')
175-
expect(queries()[1].data()).toBeUndefined()
185+
rendered.fixture.detectChanges()
186+
expect(
187+
rendered.getByText('status1: pending, fetchStatus1: idle'),
188+
).toBeInTheDocument()
189+
expect(
190+
rendered.getByText('status2: pending, fetchStatus2: idle'),
191+
).toBeInTheDocument()
176192
expect(queryFn1).toHaveBeenCalledTimes(0)
177193
expect(queryFn2).toHaveBeenCalledTimes(0)
178194
})

0 commit comments

Comments
 (0)