Migrated ShlinkVersionsContainer test to react testing library

This commit is contained in:
Alejandro Celaya 2022-05-06 21:01:44 +02:00
parent 4ea826ed2c
commit 00f154ef4e

View file

@ -1,26 +1,19 @@
import { shallow, ShallowWrapper } from 'enzyme';
import { render } from '@testing-library/react';
import { Mock } from 'ts-mockery';
import ShlinkVersionsContainer from '../../src/common/ShlinkVersionsContainer';
import { SelectedServer } from '../../src/servers/data';
import { Sidebar } from '../../src/common/reducers/sidebar';
describe('<ShlinkVersionsContainer />', () => {
let wrapper: ShallowWrapper;
const createWrapper = (sidebar: Sidebar) => {
wrapper = shallow(<ShlinkVersionsContainer selectedServer={Mock.all<SelectedServer>()} sidebar={sidebar} />);
return wrapper;
};
afterEach(() => wrapper?.unmount());
const setUp = (sidebar: Sidebar) => render(
<ShlinkVersionsContainer selectedServer={Mock.all<SelectedServer>()} sidebar={sidebar} />,
);
it.each([
[{ sidebarPresent: false }, 'text-center'],
[{ sidebarPresent: true }, 'text-center shlink-versions-container--with-sidebar'],
])('renders proper col classes based on sidebar status', (sidebar, expectedClasses) => {
const wrapper = createWrapper(sidebar);
expect(wrapper.find('div').prop('className')).toEqual(`${expectedClasses}`);
const { container } = setUp(sidebar);
expect(container.firstChild).toHaveAttribute('class', `${expectedClasses}`);
});
});