Skip to content

Commit c3be7ac

Browse files
authored
test(query-persist-client-core/persist): add test for hydrating a valid persisted cache in 'persistQueryClientRestore' (TanStack#10872)
1 parent 8f6f923 commit c3be7ac

1 file changed

Lines changed: 24 additions & 1 deletion

File tree

packages/query-persist-client-core/src/__tests__/persist.test.ts

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { describe, expect, it, vi } from 'vitest'
2-
import { QueriesObserver, QueryClient } from '@tanstack/query-core'
2+
import { QueriesObserver, QueryClient, dehydrate } from '@tanstack/query-core'
33
import {
44
persistQueryClientRestore,
55
persistQueryClientSubscribe,
@@ -155,4 +155,27 @@ describe('persistQueryClientRestore', () => {
155155
}),
156156
).rejects.toBe(removeError)
157157
})
158+
159+
it('should hydrate the query client when the persisted cache is valid', async () => {
160+
const sourceClient = new QueryClient()
161+
sourceClient.setQueryData(['key'], 'data')
162+
163+
const queryClient = new QueryClient()
164+
const persister = createSpyPersister()
165+
166+
persister.restoreClient = () =>
167+
Promise.resolve({
168+
buster: '',
169+
clientState: dehydrate(sourceClient),
170+
timestamp: Date.now(),
171+
})
172+
173+
await persistQueryClientRestore({
174+
queryClient,
175+
persister,
176+
})
177+
178+
expect(persister.removeClient).not.toHaveBeenCalled()
179+
expect(queryClient.getQueryData(['key'])).toBe('data')
180+
})
158181
})

0 commit comments

Comments
 (0)