UNPKG

wix-style-react

Version:
81 lines (77 loc) 2.98 kB
import React from 'react'; import ReactTestUtils from 'react-dom/test-utils'; import DropdownComposite from './DropdownComposite'; import Dropdown from '../Dropdown'; import { dropdownCompositeTestkitFactory } from '../../testkit'; import { dropdownCompositeTestkitFactory as enzymeDropdownCompositeTestkitFactory } from '../../testkit/enzyme'; import { mount } from 'enzyme'; describe('DropdownComposite', function () { describe('testkit', function () { it('should exist', function () { var div = document.createElement('div'); var dataHook = 'compHook'; var wrapper = div.appendChild(ReactTestUtils.renderIntoDocument(React.createElement( 'div', null, React.createElement( DropdownComposite, { dataHook: dataHook }, React.createElement(Dropdown, null) ) ))); var dropdownCompositeTestkit = dropdownCompositeTestkitFactory({ wrapper: wrapper, dataHook: dataHook }); expect(dropdownCompositeTestkit.exists()).toBeTruthy(); }); it('should show option length', function () { var div = document.createElement('div'); var dataHook = 'compHook'; var someOptions = [{ id: 0, value: 'Option 1' }, { id: 1, value: 'Option 2' }]; var wrapper = div.appendChild(ReactTestUtils.renderIntoDocument(React.createElement( 'div', null, React.createElement( DropdownComposite, { dataHook: dataHook }, React.createElement(Dropdown, { options: someOptions }) ) ))); var dropdownCompositeTestkit = dropdownCompositeTestkitFactory({ wrapper: wrapper, dataHook: dataHook }); expect(dropdownCompositeTestkit.dropdownLayoutDriver.optionsLength()).toEqual(someOptions.length); }); describe('enzyme testkit', function () { it('should exist', function () { var dataHook = 'myDataHook'; var wrapper = mount(React.createElement( DropdownComposite, { dataHook: dataHook }, React.createElement(Dropdown, null) )); var dropdownCompositeTestkit = enzymeDropdownCompositeTestkitFactory({ wrapper: wrapper, dataHook: dataHook }); expect(dropdownCompositeTestkit.exists()).toBeTruthy(); }); it('should show option length', function () { var dataHook = 'myDataHook'; var someOptions = [{ id: 0, value: 'Option 1' }, { id: 1, value: 'Option 2' }]; var wrapper = mount(React.createElement( DropdownComposite, { dataHook: dataHook }, React.createElement(Dropdown, { options: someOptions }) )); var dropdownCompositeTestkit = enzymeDropdownCompositeTestkitFactory({ wrapper: wrapper, dataHook: dataHook }); expect(dropdownCompositeTestkit.dropdownLayoutDriver.optionsLength()).toEqual(someOptions.length); }); }); }); });