wix-style-react
Version:
wix-style-react
81 lines (77 loc) • 2.98 kB
JavaScript
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);
});
});
});
});