From df8f53a41df1d706fb8eef03104918ff67c3902f Mon Sep 17 00:00:00 2001 From: Wonsuk Choi Date: Fri, 6 Mar 2026 13:40:32 +0900 Subject: [PATCH] test(query-core/queryObserver): add test for rejecting promise when 'experimental_prefetchInRender' is disabled --- .../src/__tests__/queryObserver.test.tsx | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/packages/query-core/src/__tests__/queryObserver.test.tsx b/packages/query-core/src/__tests__/queryObserver.test.tsx index 3dcb208bfa1..689dd8d2e19 100644 --- a/packages/query-core/src/__tests__/queryObserver.test.tsx +++ b/packages/query-core/src/__tests__/queryObserver.test.tsx @@ -1378,6 +1378,31 @@ describe('queryObserver', () => { unsubscribe() }) + test('should reject promise when experimental_prefetchInRender is disabled and thenable is pending', async () => { + const key = queryKey() + const queryClient2 = new QueryClient({ + defaultOptions: { + queries: { + experimental_prefetchInRender: false, + }, + }, + }) + const observer = new QueryObserver(queryClient2, { + queryKey: key, + queryFn: () => sleep(10).then(() => 'data'), + enabled: false, + }) + + const result = observer.getCurrentResult() + const tracked = observer.trackResult(result) + + await expect(tracked.promise).rejects.toThrow( + 'experimental_prefetchInRender feature flag is not enabled', + ) + + queryClient2.clear() + }) + test('should not refetchOnMount when set to "always" when staleTime is Static', async () => { const key = queryKey() const queryFn = vi.fn(() => 'data')