UNPKG

react-testing-library

Version:

Simple and complete React DOM testing utilities that encourage good testing practices.

51 lines (40 loc) 1.43 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.Simulate = exports.flushPromises = exports.render = undefined; var _reactDom = require('react-dom'); var _reactDom2 = _interopRequireDefault(_reactDom); var _testUtils = require('react-dom/test-utils'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } // we may expose this eventually function select(id) { return `[data-testid="${id}"]`; } // we may expose this eventually function queryDivByTestId(div, id) { return div.querySelector(select(id)); } function render(ui) { var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref$container = _ref.container, container = _ref$container === undefined ? document.createElement('div') : _ref$container; _reactDom2.default.render(ui, container); return { container, unmount: function unmount() { return _reactDom2.default.unmountComponentAtNode(container); }, queryByTestId: queryDivByTestId.bind(null, container) }; } // this returns a new promise and is just a simple way to // wait until the next tick so resolved promises chains will continue function flushPromises() { return new Promise(function (resolve) { return setImmediate(resolve); }); } exports.render = render; exports.flushPromises = flushPromises; exports.Simulate = _testUtils.Simulate;