Total Complexity | 1 |
Complexity/F | 0 |
Lines of Code | 28 |
Function Count | 0 |
Duplicated Lines | 0 |
Ratio | 0 % |
Changes | 0 |
1 | import { shallow, ShallowWrapper } from 'enzyme'; |
||
2 | import { Mock } from 'ts-mockery'; |
||
3 | import ShlinkVersionsContainer from '../../src/common/ShlinkVersionsContainer'; |
||
4 | import { NonReachableServer, NotFoundServer, ReachableServer, SelectedServer } from '../../src/servers/data'; |
||
5 | |||
6 | describe('<ShlinkVersionsContainer />', () => { |
||
7 | let wrapper: ShallowWrapper; |
||
8 | |||
9 | const createWrapper = (selectedServer: SelectedServer) => { |
||
10 | wrapper = shallow(<ShlinkVersionsContainer selectedServer={selectedServer} />); |
||
11 | |||
12 | return wrapper; |
||
13 | }; |
||
14 | |||
15 | afterEach(() => wrapper?.unmount()); |
||
16 | |||
17 | test.each([ |
||
18 | [ null, 'col-12' ], |
||
19 | [ Mock.of<NotFoundServer>({ serverNotFound: true }), 'col-12' ], |
||
20 | [ Mock.of<NonReachableServer>({ serverNotReachable: true }), 'col-12' ], |
||
21 | [ Mock.of<ReachableServer>({ printableVersion: 'v1.0.0' }), 'col-lg-10 offset-lg-2 col-md-9 offset-md-3' ], |
||
22 | ])('renders proper col classes based on type of selected server', (selectedServer, expectedClasses) => { |
||
23 | const wrapper = createWrapper(selectedServer); |
||
24 | |||
25 | expect(wrapper.find('div').at(1).prop('className')).toEqual(`text-center ${expectedClasses}`); |
||
26 | }); |
||
27 | }); |
||
28 |