From e86e1d52a3ebc8041d5f74d313be07ba0b078280 Mon Sep 17 00:00:00 2001 From: Wonsuk Choi Date: Thu, 4 Jun 2026 00:12:14 +0900 Subject: [PATCH] test(query-persist-client-core/retryStrategies): add test for 'removeOldestQuery' preserving mutations --- .../src/__tests__/retryStrategies.test.ts | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/packages/query-persist-client-core/src/__tests__/retryStrategies.test.ts b/packages/query-persist-client-core/src/__tests__/retryStrategies.test.ts index 81c425b272..2241de825b 100644 --- a/packages/query-persist-client-core/src/__tests__/retryStrategies.test.ts +++ b/packages/query-persist-client-core/src/__tests__/retryStrategies.test.ts @@ -85,4 +85,27 @@ describe('removeOldestQuery', () => { expect(result).toBeUndefined() }) + + it('should preserve mutations when removing the oldest query', () => { + queryClient.getMutationCache().build(queryClient, { + mutationFn: () => Promise.resolve('data'), + }) + const { mutations } = dehydrate(queryClient, { + shouldDehydrateMutation: () => true, + }) + + const persistedClient = createPersistedClient( + [createQuery('a', 10)], + mutations, + ) + + const result = removeOldestQuery({ + persistedClient, + error: new Error('full'), + errorCount: 1, + }) + + expect(result?.clientState.queries).toEqual([]) + expect(result?.clientState.mutations).toEqual(mutations) + }) })