mirror of
https://github.com/Sea-Haven-Industries/shoc-frontend-new.git
synced 2026-10-06 13:32:06 +00:00
50 lines
1.3 KiB
TypeScript
50 lines
1.3 KiB
TypeScript
import { renderHook } from "@testing-library/react";
|
|
import { describe, expect, it, vi } from "vitest";
|
|
import { useSyncOutOfRangeSearchPage } from "@/app/(protected)/workorders/_hooks/use-sync-out-of-range-search-page";
|
|
|
|
describe("useSyncOutOfRangeSearchPage", () => {
|
|
it("sets the last valid page when a search shrinks to one page", () => {
|
|
const setPage = vi.fn();
|
|
renderHook(() =>
|
|
useSyncOutOfRangeSearchPage({
|
|
enabled: true,
|
|
ready: true,
|
|
page: 1,
|
|
pageSize: 50,
|
|
totalCount: 40,
|
|
setPage,
|
|
}),
|
|
);
|
|
expect(setPage).toHaveBeenCalledWith(0);
|
|
});
|
|
|
|
it("does not sync while the search query is loading", () => {
|
|
const setPage = vi.fn();
|
|
renderHook(() =>
|
|
useSyncOutOfRangeSearchPage({
|
|
enabled: true,
|
|
ready: false,
|
|
page: 1,
|
|
pageSize: 50,
|
|
totalCount: 40,
|
|
setPage,
|
|
}),
|
|
);
|
|
expect(setPage).not.toHaveBeenCalled();
|
|
});
|
|
|
|
it("does not sync when the result set is empty", () => {
|
|
const setPage = vi.fn();
|
|
renderHook(() =>
|
|
useSyncOutOfRangeSearchPage({
|
|
enabled: true,
|
|
ready: true,
|
|
page: 1,
|
|
pageSize: 50,
|
|
totalCount: 0,
|
|
setPage,
|
|
}),
|
|
);
|
|
expect(setPage).not.toHaveBeenCalled();
|
|
});
|
|
});
|