Some handy helper functions for testing React components
You'll need both React and react-test-helpers:
npm install --save react && npm install --save-dev react-test-helpers
NOTE: if you want to use this in a non-browser environment you'll also need jsdom or similar (see src/__tests__/setup.js
for how).
Example using Mocha and Chai should:
import React from 'react/addons';
import TestHelpers from 'react-test-helpers';
const {TestUtils} = React.addons;
describe('Testing a component', function () {
it('renders something', function (done) {
let MyComp = TestHelpers.createEmittingComponent({
displayName: 'MyComp',
render() {
return <div>Hello world!</div>;
}
});
let instance;
MyComp.once('render', function () {
const div = TestUtils.findRenderedDOMComponentWithTag(instance, 'div');
div.getDOMNode().textContent.should.equal('Hello world!');
done();
});
instance = TestHelpers.renderComponent(<MyComp />);
})
});
Parameter | Type | Description |
---|---|---|
component | React.Component |
the component to render |
Renders a React component into an empty <div>
. Automatically stores all rendered components for easy unmounting using unmountComponents
below.
Unmounts all React components that have been rendered using the renderComponent
function.
Parameter | Type | Description |
---|---|---|
spec | Object |
the component spec |
Creates a React component with an event emitter which emits a "render"
event when the component is rendered.
MIT