Skip to content

Commit 9d89c15

Browse files
committed
feat(infiniteQuery): add possibility to decide which pages should be refetched
test for resetQueries, requires initialData
1 parent fe7569f commit 9d89c15

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

src/core/tests/queryClient.test.tsx

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -984,5 +984,38 @@ describe('queryClient', () => {
984984
pages: [20, 11],
985985
})
986986
})
987+
988+
test('resetQueries', async () => {
989+
const key = queryKey()
990+
let multiplier = 1
991+
new InfiniteQueryObserver<number>(queryClient, {
992+
queryKey: key,
993+
queryFn: ({ pageParam = 10 }) => Number(pageParam) * multiplier,
994+
getNextPageParam: lastPage => lastPage + 1,
995+
initialData: () => ({
996+
pages: [10, 11],
997+
pageParams: [10, 11],
998+
}),
999+
})
1000+
1001+
expect(queryClient.getQueryData(key)).toMatchObject({
1002+
pages: [10, 11],
1003+
})
1004+
1005+
multiplier = 2
1006+
1007+
await queryClient.resetQueries(
1008+
{ queryKey: key, inactive: true },
1009+
{
1010+
refetchPage: (page, allPages) => {
1011+
return page === allPages[0]
1012+
},
1013+
}
1014+
)
1015+
1016+
expect(queryClient.getQueryData(key)).toMatchObject({
1017+
pages: [20, 11],
1018+
})
1019+
})
9871020
})
9881021
})

0 commit comments

Comments
 (0)