From d7663fdeea20da381e0232deebaa84237cce468c Mon Sep 17 00:00:00 2001 From: Wonsuk Choi Date: Sun, 26 Apr 2026 17:36:30 +0900 Subject: [PATCH] test(angular-query-experimental/injectIsFetching): add filter test by 'queryKey' --- .../src/__tests__/inject-is-fetching.test.ts | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/packages/angular-query-experimental/src/__tests__/inject-is-fetching.test.ts b/packages/angular-query-experimental/src/__tests__/inject-is-fetching.test.ts index ad29c381bb..db1f7aeea1 100644 --- a/packages/angular-query-experimental/src/__tests__/inject-is-fetching.test.ts +++ b/packages/angular-query-experimental/src/__tests__/inject-is-fetching.test.ts @@ -60,6 +60,36 @@ describe('injectIsFetching', () => { expect(rendered.getByText('fetching: 0')).toBeInTheDocument() }) + it('should be able to filter by queryKey', async () => { + const key1 = queryKey() + const key2 = queryKey() + + @Component({ + template: `
fetching: {{ isFetching() }}
`, + }) + class Page { + readonly query1 = injectQuery(() => ({ + queryKey: key1, + queryFn: () => sleep(10).then(() => 'test1'), + })) + readonly query2 = injectQuery(() => ({ + queryKey: key2, + queryFn: () => sleep(100).then(() => 'test2'), + })) + readonly isFetching = injectIsFetching({ queryKey: key1 }) + } + + const rendered = await render(Page) + + await vi.advanceTimersByTimeAsync(0) + rendered.fixture.detectChanges() + expect(rendered.getByText('fetching: 1')).toBeInTheDocument() + + await vi.advanceTimersByTimeAsync(11) + rendered.fixture.detectChanges() + expect(rendered.getByText('fetching: 0')).toBeInTheDocument() + }) + describe('injection context', () => { it('should throw NG0203 with descriptive error outside injection context', () => { expect(() => {