jsx-test
is a tool that makes it easy to test '.jsx' files and includes some helpers for testing react components.
The main features of jsx-test
are:
- Includes some helpers to simplify the test of React Components.
- Assertion methods to check the component renders the correct html based on the given
props
. - Does NOT automock your dependencies.
- Is much simpler and faster than Jest.
- Works with
mocha
,jasmine
or any other test framework.
Note: If you would like to require jsx files directly please follow these instructions
npm install --save-dev jsx-test
simulateEvent(ReactComponent element, String event, Object? eventData)
simulateEvent(DOMElement element, String event, Object? eventData)
Simulates an event
on an element
.
ReactElement renderComponent(ReactComponent comp, Object? props, any? children)
Renders a component w/ its props and children.
Boolean unmountComponent(ReactComponent comp)
Unmount a component.
DOMElement elementQuerySelector(ReactComponent comp, String selector)
Gets 1st child of comp
using selector selector
DOMElement[] elementQuerySelectorAll(ReactComponent comp, String selector)
Gets children of comp
using selector selector
ReactComponent stubComponent(ReactElement tag, any? children, boolean? showDataProps)
ReactComponent stubComponent(String tag, any? children, boolean? showDataProps)
Creates a stub component with tag
and its children
. If showDataProps
is true, all props will be set in the rendered DOMElement
in the form of data-<propKey> = <propValue>
.
ReactComponent withContext(ReactComponent Component, Object context)
Wraps component in a context creating component.
assertRender(ReactComponent Component, Object props, String expectedHTML)
Assert component render matches the expectedHTML
. The expectedHTML
regex conversion can be seen here.
assertNotRender(ReactComponent Component, Object props, String unexpectedHTML)
The reverse of assertRender
.