2019-01-03 16:00:55 +03:00
|
|
|
import React from 'react';
|
|
|
|
import { render, mount } from 'enzyme';
|
|
|
|
import { renderToJson } from 'enzyme-to-json';
|
|
|
|
import { Tabs } from '../src';
|
|
|
|
import { tabs, simple10Tabs } from '../src/Tabs/stories/data';
|
|
|
|
|
2019-01-10 21:51:14 +03:00
|
|
|
describe('Tabs', function() {
|
2019-01-03 16:00:55 +03:00
|
|
|
it('renders correctly', () => {
|
|
|
|
const wrapper = render(<Tabs tabs={tabs} onClick={() => {}} />);
|
|
|
|
expect(renderToJson(wrapper)).toMatchSnapshot();
|
|
|
|
});
|
|
|
|
|
|
|
|
it('renders with props', () => {
|
|
|
|
const wrapper = render(
|
2019-01-10 21:51:14 +03:00
|
|
|
<Tabs tabs={tabs} onClick={() => {}} selected="Tab2" />
|
2019-01-03 16:00:55 +03:00
|
|
|
);
|
|
|
|
expect(renderToJson(wrapper)).toMatchSnapshot();
|
|
|
|
});
|
|
|
|
|
|
|
|
it('renders tabs without inner components', () => {
|
|
|
|
const wrapper = render(
|
2019-01-10 21:51:14 +03:00
|
|
|
<Tabs tabs={simple10Tabs} onClick={() => {}} selected="5" />
|
2019-01-03 16:00:55 +03:00
|
|
|
);
|
|
|
|
expect(renderToJson(wrapper)).toMatchSnapshot();
|
|
|
|
});
|
|
|
|
|
|
|
|
it('should select tab', () => {
|
|
|
|
const onClick = jest.fn();
|
|
|
|
const wrapper = mount(<Tabs tabs={tabs} onClick={onClick} />);
|
|
|
|
|
2019-01-10 21:51:14 +03:00
|
|
|
wrapper
|
|
|
|
.find('button')
|
|
|
|
.first()
|
|
|
|
.simulate('click');
|
2019-01-03 16:00:55 +03:00
|
|
|
expect(onClick).toBeCalled();
|
|
|
|
});
|
|
|
|
});
|