UNPKG

wix-style-react

Version:
150 lines (119 loc) • 5.61 kB
'use strict'; var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _FieldWithSelectionComposite = require('./FieldWithSelectionComposite'); var _FieldWithSelectionComposite2 = _interopRequireDefault(_FieldWithSelectionComposite); var _Label = require('../../Label'); var _Label2 = _interopRequireDefault(_Label); var _Input = require('../../Input'); var _Input2 = _interopRequireDefault(_Input); var _InputArea = require('../../InputArea'); var _InputArea2 = _interopRequireDefault(_InputArea); var _Checkbox = require('../../Checkbox'); var _Checkbox2 = _interopRequireDefault(_Checkbox); var _FieldWithSelectionComposite3 = require('./FieldWithSelectionComposite.driver'); var _FieldWithSelectionComposite4 = _interopRequireDefault(_FieldWithSelectionComposite3); var _driverFactory = require('wix-ui-test-utils/driver-factory'); var _Tooltip = require('../../Tooltip/Tooltip'); var _Tooltip2 = _interopRequireDefault(_Tooltip); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } describe('FieldWithSelectionComposite', function () { var createCompositeDriverFactory = (0, _driverFactory.createDriverFactory)(_FieldWithSelectionComposite4.default); it('should remove label wrapping when label not given', function () { var driver = createCompositeDriverFactory(_react2.default.createElement( _FieldWithSelectionComposite2.default, null, _react2.default.createElement(_Input2.default, null), _react2.default.createElement(_Checkbox2.default, null) )); expect(driver.hasLabel()).toBe(false); expect(driver.getNumberOfChildren()).toBe(1); expect(driver.hasInput()).toBe(true); expect(driver.hasSelectionInput()).toBe(true); }); it('should render Label with Input', function () { var driver = createCompositeDriverFactory(_react2.default.createElement( _FieldWithSelectionComposite2.default, null, _react2.default.createElement( _Label2.default, null, 'myLabel' ), _react2.default.createElement(_Input2.default, null), _react2.default.createElement(_Checkbox2.default, null) )); expect(driver.hasLabel()).toBe(true); expect(driver.getLabel()).toBe('myLabel'); expect(driver.hasInput()).toBe(true); expect(driver.hasSelectionInput()).toBe(true); }); it('should render Label with InputArea', function () { var driver = createCompositeDriverFactory(_react2.default.createElement( _FieldWithSelectionComposite2.default, null, _react2.default.createElement(_Label2.default, null), _react2.default.createElement(_InputArea2.default, null), _react2.default.createElement(_Checkbox2.default, null) )); expect(driver.hasLabel()).toBe(true); expect(driver.hasInput()).toBe(true); expect(driver.hasSelectionInput()).toBe(true); }); describe('input properties', function () { it('should verify that onBlur callback was called', function () { var onBlur = jest.fn(); var driver = createCompositeDriverFactory(_react2.default.createElement( _FieldWithSelectionComposite2.default, null, _react2.default.createElement(_Label2.default, null), _react2.default.createElement(_Input2.default, { onBlur: onBlur }), _react2.default.createElement(_Checkbox2.default, null) )); driver.triggerInputBlur(); expect(onBlur).toHaveBeenCalled(); }); }); describe('label attributes', function () { it('should FieldLabelAttributes not exists if all attributes empty or false', function () { var driver = createCompositeDriverFactory(_react2.default.createElement( _FieldWithSelectionComposite2.default, null, _react2.default.createElement(_Label2.default, null), _react2.default.createElement(_InputArea2.default, null), _react2.default.createElement(_Checkbox2.default, null) )); expect(driver.hasFieldLabelAttributes()).toBe(false); }); it('should FieldLabelAttributes exists if required', function () { var driver = createCompositeDriverFactory(_react2.default.createElement( _FieldWithSelectionComposite2.default, { required: true }, _react2.default.createElement(_Label2.default, null), _react2.default.createElement(_InputArea2.default, null), _react2.default.createElement(_Checkbox2.default, null) )); expect(driver.hasFieldLabelAttributes()).toBe(true); }); it('should FieldLabelAttributes exists if info', function () { var driver = createCompositeDriverFactory(_react2.default.createElement( _FieldWithSelectionComposite2.default, { info: 'info' }, _react2.default.createElement(_Label2.default, null), _react2.default.createElement(_InputArea2.default, null), _react2.default.createElement(_Checkbox2.default, null) )); expect(driver.hasFieldLabelAttributes()).toBe(true); }); it('should FieldLabelAttributes exists if tooltip', function () { var driver = createCompositeDriverFactory(_react2.default.createElement( _FieldWithSelectionComposite2.default, { tooltip: _react2.default.createElement(_Tooltip2.default, { content: 'content' }) }, _react2.default.createElement(_Label2.default, null), _react2.default.createElement(_InputArea2.default, null), _react2.default.createElement(_Checkbox2.default, null) )); expect(driver.hasFieldLabelAttributes()).toBe(true); }); }); });