UNPKG

react-file-reader-input

Version:

React file input component for complete control over styling and abstraction from file reading.

61 lines (44 loc) 1.61 kB
'use strict'; var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _reactDom = require('react-dom'); var _reactDom2 = _interopRequireDefault(_reactDom); var _assert = require('assert'); var _assert2 = _interopRequireDefault(_assert); var _index = require('../lib/index'); var _index2 = _interopRequireDefault(_index); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } describe('FileInput', function () { var div = void 0; beforeEach(function () { div = document.createElement('div'); }); afterEach(function () { while (div.firstChild) { div.removeChild(div.firstChild); } }); it('renders', function () { _assert2.default.ok(!div.querySelector('input')); _reactDom2.default.render(_react2.default.createElement(_index2.default, { className: 'input' }), div); var input = div.querySelector('input'); _assert2.default.ok(div.querySelector('input')); _assert2.default.equal(input.children.length, 0); _assert2.default.equal(input.getAttribute('type'), 'file'); }); it('can hide input with children', function () { var fileInput = _reactDom2.default.render(_react2.default.createElement( _index2.default, { className: 'input' }, _react2.default.createElement( 'p', null, 'Input' ) ), div); var input = div.querySelector('input'); _assert2.default.equal(input.children.length, 0); _assert2.default.equal(input.getAttribute('type'), 'file'); _assert2.default.ok(div.querySelector('p')); }); });