Skip to content

Commit

Permalink
[test]: useIsFirstRender
Browse files Browse the repository at this point in the history
  • Loading branch information
wmoooid committed Jun 2, 2024
1 parent cba80a9 commit bba984b
Showing 1 changed file with 35 additions and 0 deletions.
35 changes: 35 additions & 0 deletions src/hooks/useIsFirstRender/useIsFirstRender.test.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
import { renderHook } from '@testing-library/react';

import { useIsFirstRender } from './useIsFirstRender';

it('Should return true on the first render', () => {
const { result } = renderHook(useIsFirstRender);

expect(result.current).toBe(true);
});

it('Should return false on subsequent renders', () => {
const { result, rerender } = renderHook(useIsFirstRender);

expect(result.current).toBe(true);

rerender();
expect(result.current).toBe(false);

rerender();
expect(result.current).toBe(false);
});

it('Should maintain state across multiple components', () => {
const { result: result1, rerender: rerender1 } = renderHook(useIsFirstRender);
const { result: result2, rerender: rerender2 } = renderHook(useIsFirstRender);

expect(result1.current).toBe(true);
expect(result2.current).toBe(true);

rerender1();
expect(result1.current).toBe(false);

rerender2();
expect(result2.current).toBe(false);
});

0 comments on commit bba984b

Please sign in to comment.