wix-style-react
Version:
wix-style-react
109 lines (81 loc) • 4.11 kB
JavaScript
'use strict';
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _testUtils = require('react-dom/test-utils');
var _testUtils2 = _interopRequireDefault(_testUtils);
var _Input = require('./Input');
var _Input2 = _interopRequireDefault(_Input);
var _testkit = require('../../../testkit');
var _enzyme = require('../../../testkit/enzyme');
var _testkitSanity = require('../../../test/utils/testkit-sanity');
var _enzyme2 = require('enzyme');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
describe('Input', function () {
var div = void 0;
var dataHook = 'input-hook';
var renderToDocument = function renderToDocument(component) {
return div.appendChild(_testUtils2.default.renderIntoDocument(_react2.default.createElement(
'div',
null,
component
)));
};
beforeEach(function () {
return div = document.createElement('div');
});
it('should exist', function () {
var wrapper = renderToDocument(_react2.default.createElement(_Input2.default, { dataHook: dataHook }));
var inputTestkit = (0, _testkit.tpaInputTestkitFactory)({ wrapper: wrapper, dataHook: dataHook });
expect(inputTestkit.exists()).toBeTruthy();
});
it('should contain default value', function () {
var wrapper = renderToDocument(_react2.default.createElement(_Input2.default, { defaultValue: 'some default value', dataHook: dataHook }));
var inputTestkit = (0, _testkit.tpaInputTestkitFactory)({ wrapper: wrapper, dataHook: dataHook });
expect(inputTestkit.getValue()).toEqual('some default value');
});
it('should return passed value', function () {
var wrapper = renderToDocument(_react2.default.createElement(_Input2.default, { value: 'the value', onChange: function onChange() {}, dataHook: dataHook }));
var inputTestkit = (0, _testkit.tpaInputTestkitFactory)({ wrapper: wrapper, dataHook: dataHook });
expect(inputTestkit.getValue()).toEqual('the value');
});
it('should have input class', function () {
var wrapper = renderToDocument(_react2.default.createElement(_Input2.default, { styles: { locals: { input: 'input' } }, dataHook: dataHook }));
var inputTestkit = (0, _testkit.tpaInputTestkitFactory)({ wrapper: wrapper, dataHook: dataHook });
expect(inputTestkit.hasClass('input')).toBeTruthy();
expect(inputTestkit.hasClass('error')).toBeFalsy();
});
it('should be in error state', function () {
var wrapper = renderToDocument(_react2.default.createElement(_Input2.default, {
error: true,
styles: { locals: { input: 'input', error: 'error' } },
dataHook: dataHook
}));
var inputTestkit = (0, _testkit.tpaInputTestkitFactory)({ wrapper: wrapper, dataHook: dataHook });
expect(inputTestkit.hasClass('error')).toBeTruthy();
});
it('should be able to pass error class name', function () {
var wrapper = renderToDocument(_react2.default.createElement(_Input2.default, {
error: true,
errorClassName: 'customErrorClassName',
styles: { locals: { input: 'input', error: 'error' } },
dataHook: dataHook
}));
var inputTestkit = (0, _testkit.tpaInputTestkitFactory)({ wrapper: wrapper, dataHook: dataHook });
expect(inputTestkit.hasClass('customErrorClassName')).toBeTruthy();
});
it('should be able to pass custom input css class name', function () {
var wrapper = renderToDocument(_react2.default.createElement(_Input2.default, {
error: true,
inputClassName: 'customInputClassName',
styles: { locals: { input: 'input', error: 'error' } },
dataHook: dataHook
}));
var inputTestkit = (0, _testkit.tpaInputTestkitFactory)({ wrapper: wrapper, dataHook: dataHook });
expect(inputTestkit.hasClass('customInputClassName')).toBeTruthy();
});
describe('enzyme testkit', function () {
it('should exist', function () {
expect((0, _testkitSanity.isEnzymeTestkitExists)(_react2.default.createElement(_Input2.default, null), _enzyme.tpaInputTestkitFactory, _enzyme2.mount)).toBe(true);
});
});
});