I have a component and a test which fails. I get the error ReferenceError: act is not defined. Any idea for a fix? I've been trying to read around and fix this myself but I havent yet managed to.
export const useCounter = (initialValue = 0) => {
const [counter, setCounter] = useState(initialValue)
const add = useCallback((delta = 1) => setCounter(counter => counter + delta), [setCounter])
const substract = useCallback((delta = 1) => setCounter(counter => counter - delta), [setCounter])
return (
<>
Count: {counter}
{add, substract}
</>
)
}
import { renderHook } from '@testing-library/react-hooks'
import { useCounter } from '@/hooks/useCounter'
describe('Testing useCounter hook', () => {
it('should add +1 to counter', () => {
const { result } = renderHook(useCounter)
act(() => result.current.add())
expect(result.current.counter).toBe(1)
})
it('should subtract -1 to counter', () => {
const { result } = renderHook(useCounter)
act(() => result.current.subtract())
expect(result.current.counter).toBe(-1)
})
})