Skip to content

Commit 459610c

Browse files
committed
test: 100% coverage
1 parent c8d462c commit 459610c

File tree

2 files changed

+35
-1
lines changed

2 files changed

+35
-1
lines changed

examples/uncontrolled.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ export default () => (
3333
locale={zhCN}
3434
picker="week"
3535
allowClear
36-
open
36+
// open
3737
onOpenChange={open => {
3838
console.log('3 =>', open);
3939
}}

tests/range.spec.tsx

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -740,6 +740,40 @@ describe('Picker.Range', () => {
740740
});
741741
});
742742

743+
it('focus to next input not to onOpenChange', () => {
744+
jest.useFakeTimers();
745+
746+
const onOpenChange = jest.fn();
747+
const wrapper = mount(<MomentRangePicker onOpenChange={onOpenChange} />);
748+
wrapper.openPicker();
749+
onOpenChange.mockReset();
750+
751+
const clickEvent = new Event('mousedown');
752+
Object.defineProperty(clickEvent, 'target', {
753+
get: () =>
754+
wrapper
755+
.find('input')
756+
.last()
757+
.instance(),
758+
});
759+
act(() => {
760+
window.dispatchEvent(clickEvent);
761+
wrapper
762+
.find('input')
763+
.first()
764+
.simulate('blur');
765+
wrapper
766+
.find('input')
767+
.last()
768+
.simulate('focus');
769+
jest.runAllTimers();
770+
});
771+
772+
expect(onOpenChange).not.toHaveBeenCalled();
773+
774+
jest.useRealTimers();
775+
});
776+
743777
it('fixed open need repeat trigger onOpenChange', () => {
744778
jest.useFakeTimers();
745779
const onOpenChange = jest.fn();

0 commit comments

Comments
 (0)