Skip to content

Commit 97b5b4d

Browse files
committed
test: update unit test
1 parent 843ffdc commit 97b5b4d

File tree

2 files changed

+38
-55
lines changed

2 files changed

+38
-55
lines changed

tests/__snapshots__/index.spec.tsx.snap

Lines changed: 14 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,9 @@
11
// Jest Snapshot v1, https://goo.gl/fbAQLP
22

3-
exports[`collapse props items should work 1`] = `
3+
exports[`collapse props items should work with nested 1`] = `
44
<div
55
class="rc-collapse"
66
>
7-
<div
8-
class="rc-collapse-item"
9-
>
10-
<div
11-
aria-disabled="false"
12-
aria-expanded="false"
13-
class="rc-collapse-header"
14-
role="button"
15-
tabindex="0"
16-
>
17-
<div
18-
class="rc-collapse-expand-icon"
19-
>
20-
<i
21-
class="arrow"
22-
/>
23-
</div>
24-
<span
25-
class="rc-collapse-header-text"
26-
>
27-
title
28-
</span>
29-
</div>
30-
</div>
317
<div
328
class="rc-collapse-item rc-collapse-item-disabled"
339
>
@@ -48,17 +24,10 @@ exports[`collapse props items should work 1`] = `
4824
<span
4925
class="rc-collapse-header-text"
5026
>
51-
title 2
27+
collapse 1
5228
</span>
5329
</div>
5430
</div>
55-
</div>
56-
`;
57-
58-
exports[`collapse props items should work with nested 1`] = `
59-
<div
60-
class="rc-collapse"
61-
>
6231
<div
6332
class="rc-collapse-item"
6433
>
@@ -79,19 +48,26 @@ exports[`collapse props items should work with nested 1`] = `
7948
<span
8049
class="rc-collapse-header-text"
8150
>
82-
title
51+
collapse 2
8352
</span>
53+
<div
54+
class="rc-collapse-extra"
55+
>
56+
<span>
57+
ExtraSpan
58+
</span>
59+
</div>
8460
</div>
8561
</div>
8662
<div
87-
class="rc-collapse-item rc-collapse-item-disabled"
63+
class="rc-collapse-item important"
8864
>
8965
<div
90-
aria-disabled="true"
66+
aria-disabled="false"
9167
aria-expanded="false"
9268
class="rc-collapse-header"
9369
role="button"
94-
tabindex="-1"
70+
tabindex="0"
9571
>
9672
<div
9773
class="rc-collapse-expand-icon"
@@ -103,7 +79,7 @@ exports[`collapse props items should work with nested 1`] = `
10379
<span
10480
class="rc-collapse-header-text"
10581
>
106-
title 2
82+
collapse 3
10783
</span>
10884
</div>
10985
</div>

tests/index.spec.tsx

Lines changed: 24 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -691,40 +691,47 @@ describe('collapse', () => {
691691
expect(container.querySelector('.rc-collapse-item').style.color).toBe('red');
692692
});
693693

694-
describe('props items', () => {
694+
describe.only('props items', () => {
695695
const items: ItemType[] = [
696696
{
697-
header: 'title',
698-
children: 'content',
697+
key: '1',
698+
header: 'collapse 1',
699+
children: 'first',
700+
collapsible: 'disabled',
699701
},
700702
{
701-
header: 'title 2',
702-
children: 'content 2',
703-
collapsible: 'disabled',
703+
key: '2',
704+
header: 'collapse 2',
705+
children: 'second',
706+
extra: <span>ExtraSpan</span>,
707+
},
708+
{
709+
key: '3',
710+
header: 'collapse 3',
711+
className: 'important',
712+
children: 'third',
704713
},
705714
];
706715

707-
it('should work', () => {
708-
const { container } = render(<Collapse items={items} />);
709-
expect(container.firstChild).toMatchSnapshot();
710-
});
716+
runNormalTest(
717+
<Collapse onChange={onChange} expandIcon={() => <span>test{'>'}</span>} items={items} />,
718+
);
711719

712720
it('should work with onItemClick', () => {
713721
const onItemClick = jest.fn();
714722
const { container } = render(
715723
<Collapse
716724
items={[
717-
...items,
718725
{
719726
header: 'title 3',
720727
onItemClick,
721728
},
722729
]}
723730
/>,
724731
);
725-
fireEvent.click(container.querySelectorAll('.rc-collapse-header')[2]);
732+
fireEvent.click(container.querySelector('.rc-collapse-header'));
726733
expect(onItemClick).toHaveBeenCalled();
727-
expect(onItemClick).lastCalledWith('2');
734+
expect(onItemClick).lastCalledWith('0');
728735
});
729736

730737
it('should work with collapsible', () => {
@@ -734,7 +741,7 @@ describe('collapse', () => {
734741
<Collapse
735742
onChange={onChangeFn}
736743
items={[
737-
...items,
744+
...items.slice(0, 1),
738745
{
739746
header: 'title 3',
740747
onItemClick,
@@ -744,15 +751,15 @@ describe('collapse', () => {
744751
/>,
745752
);
746753

747-
fireEvent.click(container.querySelectorAll('.rc-collapse-header')[2]);
754+
fireEvent.click(container.querySelector('.rc-collapse-header'));
748755
expect(onItemClick).not.toHaveBeenCalled();
749756

750757
fireEvent.click(
751-
container.querySelector('.rc-collapse-item:nth-child(3) .rc-collapse-expand-icon'),
758+
container.querySelector('.rc-collapse-item:nth-child(2) .rc-collapse-expand-icon'),
752759
);
753760
expect(onItemClick).toHaveBeenCalled();
754761
expect(onChangeFn).toBeCalledTimes(1);
755-
expect(onChangeFn).lastCalledWith(['2']);
762+
expect(onChangeFn).lastCalledWith(['1']);
756763
});
757764

758765
it('should work with custom icon', () => {

0 commit comments

Comments
 (0)