@@ -9,6 +9,7 @@ import type { Wrapper } from './util/commonUtil';
99import { mount , getMoment , isSame , MomentRangePicker } from './util/commonUtil' ;
1010import zhCN from '../src/locale/zh_CN' ;
1111import type { PickerMode } from '../src/interface' ;
12+ import { fireEvent , render } from '@testing-library/react' ;
1213
1314describe ( 'Picker.Range' , ( ) => {
1415 function matchValues ( wrapper : Wrapper , value1 : string , value2 : string ) {
@@ -693,23 +694,15 @@ describe('Picker.Range', () => {
693694 it ( 'fixed open need repeat trigger onOpenChange' , ( ) => {
694695 jest . useFakeTimers ( ) ;
695696 const onOpenChange = jest . fn ( ) ;
696- const wrapper = mount ( < MomentRangePicker onOpenChange = { onOpenChange } open /> ) ;
697+ render ( < MomentRangePicker onOpenChange = { onOpenChange } open /> ) ;
697698
698- for ( let i = 0 ; i < 10 ; i += 1 ) {
699- const clickEvent = new Event ( 'mousedown' ) ;
700- Object . defineProperty ( clickEvent , 'target' , {
701- get : ( ) => document . body ,
702- } ) ;
699+ expect ( onOpenChange ) . toHaveBeenCalledTimes ( 0 ) ;
703700
704- const current = onOpenChange . mock . calls . length ;
701+ for ( let i = 0 ; i < 10 ; i += 1 ) {
705702 act ( ( ) => {
706- window . dispatchEvent ( clickEvent ) ;
707- wrapper . find ( 'input' ) . first ( ) . simulate ( 'blur' ) ;
703+ fireEvent . mouseDown ( document . body ) ;
708704 } ) ;
709- const next = onOpenChange . mock . calls . length ;
710-
711- // Maybe not good since onOpenChange trigger twice
712- expect ( current < next ) . toBeTruthy ( ) ;
705+ expect ( onOpenChange ) . toHaveBeenCalledTimes ( 1 ) ;
713706 }
714707 act ( ( ) => {
715708 jest . runAllTimers ( ) ;
0 commit comments