Skip to content

Commit 153f508

Browse files
authored
chore: migrate to react-testing library (#570)
1 parent e379390 commit 153f508

File tree

8 files changed

+85
-128
lines changed

8 files changed

+85
-128
lines changed

package.json

-1
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,6 @@
8383
"react-dom": "18.3.1",
8484
"react-live": "4.1.8",
8585
"react-modal": "3.16.3",
86-
"react-test-renderer": "18.3.1",
8786
"webpack": "5.97.1",
8887
"webpack-cli": "5.1.4",
8988
"webpack-dev-server": "5.2.0"

pnpm-lock.yaml

-26
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/components/__tests__/Tab-test.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
import React from 'react';
2-
import renderer from 'react-test-renderer';
2+
import { render } from '@testing-library/react';
33
import Tab from '../Tab';
44
import { TabWrapper } from './helpers/higherOrder';
55

66
function expectToMatchSnapshot(component) {
7-
expect(renderer.create(component).toJSON()).toMatchSnapshot();
7+
const { container } = render(component);
8+
expect(container.firstChild).toMatchSnapshot();
89
}
910

1011
describe('<Tab />', () => {

src/components/__tests__/TabList-test.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import React from 'react';
2-
import renderer from 'react-test-renderer';
2+
import { render } from '@testing-library/react';
33
import Tab from '../Tab';
44
import TabList from '../TabList';
55
import TabPanel from '../TabPanel';
@@ -16,7 +16,8 @@ jest.mock('react', () => {
1616
});
1717

1818
function expectToMatchSnapshot(component) {
19-
expect(renderer.create(component).toJSON()).toMatchSnapshot();
19+
const { container } = render(component);
20+
expect(container.firstChild).toMatchSnapshot();
2021
}
2122

2223
describe('<TabList />', () => {

src/components/__tests__/TabPanel-test.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
import React from 'react';
2-
import renderer from 'react-test-renderer';
2+
import { render } from '@testing-library/react';
33
import TabPanel from '../TabPanel';
44
import { TabPanelWrapper } from './helpers/higherOrder';
55

66
function expectToMatchSnapshot(component) {
7-
expect(renderer.create(component).toJSON()).toMatchSnapshot();
7+
const { container } = render(component);
8+
expect(container.firstChild).toMatchSnapshot();
89
}
910

1011
describe('<TabPanel />', () => {

src/components/__tests__/__snapshots__/Tab-test.js.snap

+23-30
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@ exports[`<Tab /> override the tabIndex if it was provided 1`] = `
55
aria-controls="panelnull"
66
aria-disabled="false"
77
aria-selected="false"
8-
className="react-tabs__tab"
9-
data-rttab={true}
8+
class="react-tabs__tab"
9+
data-rttab="true"
1010
id="tabnull"
1111
role="tab"
12-
tabIndex="0"
12+
tabindex="0"
1313
>
1414
Hello
1515
</li>
@@ -20,11 +20,10 @@ exports[`<Tab /> should accept className 1`] = `
2020
aria-controls="panelnull"
2121
aria-disabled="false"
2222
aria-selected="false"
23-
className="foobar"
24-
data-rttab={true}
23+
class="foobar"
24+
data-rttab="true"
2525
id="tabnull"
2626
role="tab"
27-
tabIndex={null}
2827
/>
2928
`;
3029

@@ -33,11 +32,10 @@ exports[`<Tab /> should allow to be wrapped in higher-order-component 1`] = `
3332
aria-controls="panelnull"
3433
aria-disabled="false"
3534
aria-selected="false"
36-
className="react-tabs__tab"
37-
data-rttab={true}
35+
class="react-tabs__tab"
36+
data-rttab="true"
3837
id="tabnull"
3938
role="tab"
40-
tabIndex={null}
4139
/>
4240
`;
4341

@@ -46,11 +44,10 @@ exports[`<Tab /> should have sane defaults 1`] = `
4644
aria-controls="panelnull"
4745
aria-disabled="false"
4846
aria-selected="false"
49-
className="react-tabs__tab"
50-
data-rttab={true}
47+
class="react-tabs__tab"
48+
data-rttab="true"
5149
id="tabnull"
5250
role="tab"
53-
tabIndex={null}
5451
/>
5552
`;
5653

@@ -59,11 +56,10 @@ exports[`<Tab /> should not allow overriding all default properties 1`] = `
5956
aria-controls="panelnull"
6057
aria-disabled="false"
6158
aria-selected="false"
62-
className="react-tabs__tab"
63-
data-rttab={true}
59+
class="react-tabs__tab"
60+
data-rttab="true"
6461
id="tabnull"
6562
role="tab"
66-
tabIndex={null}
6763
/>
6864
`;
6965

@@ -72,12 +68,11 @@ exports[`<Tab /> should pass through custom properties 1`] = `
7268
aria-controls="panelnull"
7369
aria-disabled="false"
7470
aria-selected="false"
75-
className="react-tabs__tab"
76-
data-rttab={true}
71+
class="react-tabs__tab"
72+
data-rttab="true"
7773
data-tooltip="Tooltip contents"
7874
id="tabnull"
7975
role="tab"
80-
tabIndex={null}
8176
/>
8277
`;
8378

@@ -86,11 +81,10 @@ exports[`<Tab /> should support being disabled 1`] = `
8681
aria-controls="panelnull"
8782
aria-disabled="true"
8883
aria-selected="false"
89-
className="react-tabs__tab react-tabs__tab--disabled"
90-
data-rttab={true}
84+
class="react-tabs__tab react-tabs__tab--disabled"
85+
data-rttab="true"
9186
id="tabnull"
9287
role="tab"
93-
tabIndex={null}
9488
/>
9589
`;
9690

@@ -99,11 +93,10 @@ exports[`<Tab /> should support being disabled with custom class name 1`] = `
9993
aria-controls="panelnull"
10094
aria-disabled="true"
10195
aria-selected="false"
102-
className="react-tabs__tab coolDisabled"
103-
data-rttab={true}
96+
class="react-tabs__tab coolDisabled"
97+
data-rttab="true"
10498
id="tabnull"
10599
role="tab"
106-
tabIndex={null}
107100
/>
108101
`;
109102

@@ -112,11 +105,11 @@ exports[`<Tab /> should support being selected 1`] = `
112105
aria-controls="panelabcd"
113106
aria-disabled="false"
114107
aria-selected="true"
115-
className="react-tabs__tab react-tabs__tab--selected"
116-
data-rttab={true}
108+
class="react-tabs__tab react-tabs__tab--selected"
109+
data-rttab="true"
117110
id="tababcd"
118111
role="tab"
119-
tabIndex="0"
112+
tabindex="0"
120113
>
121114
Hello
122115
</li>
@@ -127,10 +120,10 @@ exports[`<Tab /> should support being selected with custom class 1`] = `
127120
aria-controls="panelnull"
128121
aria-disabled="false"
129122
aria-selected="true"
130-
className="react-tabs__tab cool"
131-
data-rttab={true}
123+
class="react-tabs__tab cool"
124+
data-rttab="true"
132125
id="tabnull"
133126
role="tab"
134-
tabIndex="0"
127+
tabindex="0"
135128
/>
136129
`;

0 commit comments

Comments
 (0)