Skip to content

Commit 054ea94

Browse files
authored
test: add test for returning stable objects across re-renders for the useAsyncIterState hook (#47)
1 parent 08a664d commit 054ea94

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

spec/tests/useAsyncIterState.spec.tsx

+15
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,21 @@ afterEach(() => {
1414
});
1515

1616
describe('`useAsyncIterState` hook', () => {
17+
it(
18+
gray(
19+
'The returned iterable and setter function both remain stable references across re-renders'
20+
),
21+
async () => {
22+
const renderedHook = renderHook(() => useAsyncIterState());
23+
const [iter, setter] = renderedHook.result.current;
24+
25+
for (let i = 0; i < 3; ++i) {
26+
renderedHook.rerender();
27+
expect(renderedHook.result.current).toStrictEqual([iter, setter]);
28+
}
29+
}
30+
);
31+
1732
it(gray("The state iterable's `.current.value` property is read-only"), async () => {
1833
const [values] = renderHook(() => useAsyncIterState<string>()).result.current;
1934

0 commit comments

Comments
 (0)