fix: respect query eligibility in screen sync (WealthLedger/frontend#54)
This commit was merged in pull request #82.
This commit is contained in:
@@ -78,4 +78,35 @@ describe("read-only screen synchronization", () => {
|
||||
await act(async () => result.current.refresh());
|
||||
await waitFor(() => expect(gets).toBe(2));
|
||||
});
|
||||
|
||||
it("does not manually refetch disabled resources", async () => {
|
||||
vi.useFakeTimers();
|
||||
const refetch = vi.fn(() => Promise.resolve());
|
||||
|
||||
const resource = {
|
||||
isEnabled: false,
|
||||
isError: true,
|
||||
isFetching: false,
|
||||
queryKey: [],
|
||||
refetch,
|
||||
};
|
||||
|
||||
try {
|
||||
const { result, unmount } = renderHook(() =>
|
||||
useScreenSync({ screen: "accounts" }, [resource]),
|
||||
);
|
||||
|
||||
await act(async () => {
|
||||
await result.current.refresh();
|
||||
await result.current.retry();
|
||||
});
|
||||
await act(() => vi.advanceTimersByTime(1_800_000));
|
||||
|
||||
expect(refetch).not.toHaveBeenCalled();
|
||||
unmount();
|
||||
}
|
||||
finally {
|
||||
vi.useRealTimers();
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user