@suspensive/react
Version:
Suspensive interfaces for react
26 lines (19 loc) • 728 B
text/typescript
import { renderHook } from '@testing-library/react'
import { useIsChanged } from './useIsChanged'
describe('useIsChanged', () => {
it('should return boolean that express if given argument is changed value on previous render', () => {
const { result, rerender } = renderHook<boolean, { count: number }>(({ count }) => useIsChanged(count), {
initialProps: { count: 0 },
})
rerender({ count: 1 })
expect(result.current).toBe(true)
rerender({ count: 2 })
expect(result.current).toBe(true)
rerender({ count: 2 })
expect(result.current).toBe(false)
rerender({ count: 2 })
expect(result.current).toBe(false)
rerender({ count: 3 })
expect(result.current).toBe(true)
})
})