diff --git a/src/renderComponent.js b/src/renderComponent.js index a3446146..94cd2c0e 100644 --- a/src/renderComponent.js +++ b/src/renderComponent.js @@ -11,7 +11,7 @@ export default function renderComponent( ): React.Node { const { render, children, component, ...rest } = props if (component) { - return React.createElement(component, { ...rest, children }) // inject children back in + return React.createElement(component, { ...rest, children, render }) } if (render) { return render({ ...rest, children }) // inject children back in diff --git a/src/renderComponent.test.js b/src/renderComponent.test.js new file mode 100644 index 00000000..44d30b18 --- /dev/null +++ b/src/renderComponent.test.js @@ -0,0 +1,16 @@ +import renderComponent from './renderComponent' + +describe('renderComponent', () => { + it('should pass both render and children prop', () => { + const children = 'some children' + const render = () => 'examplary render function' + const props = { + component: () => null, + children, + render + } + const name = 'TestComponent' + const result = renderComponent(props, name) + expect(result.props).toEqual({ children, render }) + }) +})