Skip to content

Commit 65ab39b

Browse files
author
刘欢
committed
feat: update test to pass all itemData properties in onSelect and onClick when using items prop
1 parent 0f8ea52 commit 65ab39b

1 file changed

Lines changed: 5 additions & 31 deletions

File tree

tests/MenuItem.spec.tsx

Lines changed: 5 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -181,51 +181,25 @@ describe('MenuItem', () => {
181181
);
182182
});
183183

184-
it('should only pass defined itemData properties in onSelect and onClick', () => {
184+
it('should pass all itemData properties in onSelect and onClick when using items prop', () => {
185185
const onSelect = jest.fn();
186186
const onClick = jest.fn();
187+
const items = [{ key: '1', label: 'Menu Item', foo: '123', title: 'test title' }];
187188
const { container } = render(
188-
<Menu
189-
onSelect={onSelect}
190-
onClick={onClick}
191-
selectable
192-
items={[{ key: '1', label: 'Menu Item', foo: '123' }] as any}
193-
/>,
189+
<Menu onSelect={onSelect} onClick={onClick} selectable items={items as any} />,
194190
);
195191

196192
fireEvent.click(container.querySelector('.rc-menu-item')!);
197193
expect(onSelect).toHaveBeenCalledWith(
198194
expect.objectContaining({
199195
key: '1',
200-
itemData: expect.objectContaining({
201-
key: '1',
202-
label: 'Menu Item',
203-
}),
204-
}),
205-
);
206-
expect(onSelect).toHaveBeenCalledWith(
207-
expect.objectContaining({
208-
key: '1',
209-
itemData: expect.not.objectContaining({
210-
foo: '123',
211-
}),
196+
itemData: expect.objectContaining(items[0]),
212197
}),
213198
);
214199
expect(onClick).toHaveBeenCalledWith(
215200
expect.objectContaining({
216201
key: '1',
217-
itemData: expect.objectContaining({
218-
key: '1',
219-
label: 'Menu Item',
220-
}),
221-
}),
222-
);
223-
expect(onClick).toHaveBeenCalledWith(
224-
expect.objectContaining({
225-
key: '1',
226-
itemData: expect.not.objectContaining({
227-
foo: '123',
228-
}),
202+
itemData: expect.objectContaining(items[0]),
229203
}),
230204
);
231205
});

0 commit comments

Comments
 (0)