/* eslint-disable react/display-name, react/no-multi-comp */ import React from 'react'; import {mount} from 'enzyme'; import {DropdownTree} from './dropdown-tree'; const groups = [ { render: () => null, items: [ {text: 'item 1-1'}, { render: () =>
subgroup 1
, items: [ {text: 'subgroup item 1'}, {text: 'subgroup item 2'}, { render: () =>
subgroup 2
, items: [ {text: 'subgroup item 2.1'}, {text: 'subgroup item 2.2'}, {text: 'subgroup item 2.3'}, ], }, {text: 'subgroup item 3'}, ], }, {text: 'item 1-2'}, {text: 'item 1-3'}, {text: 'item 1-4'}, ], }, { render: () =>
group 2
, items: [ {text: 'item 2-1'}, {text: 'item 2-2'}, {text: 'item 2-3'}, ], }, { render: () =>
group 3
, items: [ {text: 'item 3-1'}, {text: 'item 3-2'}, {text: 'item 3-3'}, ], }, ]; it('renders correctly', () => { const wrapper = mount( () } groups={groups} renderItem={(key, item, closeDropdown) => (
{item.text}
)} />, ); wrapper.find('[data-test-id="toggle-button"]').simulate('click'); expect( wrapper.html(), ).toBe( // tslint:disable-next-line:max-line-length '
item 1-1
subgroup 1
subgroup item 1
subgroup item 2
subgroup 2
subgroup item 2.1
subgroup item 2.2
subgroup item 2.3
subgroup item 3
item 1-2
item 1-3
item 1-4
group 2
item 2-1
item 2-2
item 2-3
group 3
item 3-1
item 3-2
item 3-3
', ); });