diff --git a/src/__tests__/render.js b/src/__tests__/render.js index 54916ba4..8ea28ebf 100644 --- a/src/__tests__/render.js +++ b/src/__tests__/render.js @@ -1,6 +1,8 @@ import React from 'react' import ReactDOM from 'react-dom' import {render, screen} from '../' +import {cleanup} from '../pure' +import {act} from 'react-dom/test-utils' test('renders div into document', () => { const ref = React.createRef() @@ -87,3 +89,17 @@ test('renders options.wrapper around node', () => { `) }) + +test('flushes useEffect cleanup functions sync on unmount()', () => { + const spy = jest.fn() + function Component() { + React.useEffect(() => spy, []) + return null + } + const {unmount} = render() + expect(spy).toHaveBeenCalledTimes(0) + + unmount() + + expect(spy).toHaveBeenCalledTimes(1) +})