UNPKG

rerenderer

Version:

For React: Easy handling of object editing and state update re-renders

24 lines (23 loc) 1.01 kB
import { jsx as _jsx } from "react/jsx-runtime"; import renderer, { act } from 'react-test-renderer'; import { RerenderProvider, useRerender } from '../src/rerender'; describe('RerenderProvider and useRerender', function () { it('re-renders children when refresh is called', function () { var renderCount = 0; function TestComponent() { renderCount++; var rerender = useRerender().rerender; return _jsx("button", { onClick: rerender, children: renderCount }); } var testRenderer = renderer.create(_jsx(RerenderProvider, { children: _jsx(TestComponent, {}) })); var button = testRenderer.root.findByType('button'); // Initial render count expect(button.children).toEqual(['1']); // Trigger refresh to force re-render act(function () { button.props.onClick(); }); // After refresh, renderCount should be incremented expect(button.children).toEqual(['2']); }); });