diff --git a/packages/react-query/src/__tests__/HydrationBoundary.test.tsx b/packages/react-query/src/__tests__/HydrationBoundary.test.tsx
index 8611c4c40d..67b409c6ad 100644
--- a/packages/react-query/src/__tests__/HydrationBoundary.test.tsx
+++ b/packages/react-query/src/__tests__/HydrationBoundary.test.tsx
@@ -480,4 +480,64 @@ describe('React hydration', () => {
prefetchQueryClient.clear()
clientQueryClient.clear()
})
+
+ test('should not refetch when query has enabled set to false', async () => {
+ const queryFn = vi.fn()
+ const queryClient = new QueryClient()
+
+ function Page() {
+ const { data } = useQuery({
+ queryKey: ['string'],
+ queryFn,
+ enabled: false,
+ })
+ return
{JSON.stringify(data)}
+ }
+
+ const rendered = render(
+
+
+
+
+ ,
+ )
+
+ expect(rendered.getByText('["stringCached"]')).toBeInTheDocument()
+
+ await vi.advanceTimersByTimeAsync(11)
+ expect(queryFn).toHaveBeenCalledTimes(0)
+ expect(rendered.getByText('["stringCached"]')).toBeInTheDocument()
+
+ queryClient.clear()
+ })
+
+ test('should not refetch when query has staleTime set to Infinity', async () => {
+ const queryFn = vi.fn()
+ const queryClient = new QueryClient()
+
+ function Page() {
+ const { data } = useQuery({
+ queryKey: ['string'],
+ queryFn,
+ staleTime: Infinity,
+ })
+ return {JSON.stringify(data)}
+ }
+
+ const rendered = render(
+
+
+
+
+ ,
+ )
+
+ expect(rendered.getByText('["stringCached"]')).toBeInTheDocument()
+
+ await vi.advanceTimersByTimeAsync(11)
+ expect(queryFn).toHaveBeenCalledTimes(0)
+ expect(rendered.getByText('["stringCached"]')).toBeInTheDocument()
+
+ queryClient.clear()
+ })
})