@@ -1114,6 +1114,64 @@ describe("Month", () => {
11141114 expect ( onDayMouseEnterSpy ) . not . toHaveBeenCalled ( ) ;
11151115 } ) ;
11161116
1117+ it ( "should return disabled class if specified excludeDate" , ( ) => {
1118+ const onDayClickSpy = jest . fn ( ) ;
1119+ const onDayMouseEnterSpy = jest . fn ( ) ;
1120+ const { container } = render (
1121+ < Month
1122+ day = { newDate ( "2015-12-01" ) }
1123+ excludeDates = { [ newDate ( "2015-02-01" ) , newDate ( "2015-07-03" ) ] }
1124+ showQuarterYearPicker
1125+ onDayClick = { onDayClickSpy }
1126+ onDayMouseEnter = { onDayMouseEnterSpy }
1127+ /> ,
1128+ ) ;
1129+ // exclude quarter index
1130+ const quarterTexts = container . querySelectorAll (
1131+ ".react-datepicker__quarter-text" ,
1132+ ) ;
1133+
1134+ [ 0 , 2 ] . forEach ( ( i ) => {
1135+ const quarter = quarterTexts [ i ] ! ;
1136+ expect (
1137+ quarter . classList . contains ( "react-datepicker__quarter-text--disabled" ) ,
1138+ ) . toBe ( true ) ;
1139+ fireEvent . click ( quarter ) ;
1140+ expect ( onDayClickSpy ) . not . toHaveBeenCalled ( ) ;
1141+ fireEvent . mouseEnter ( quarter ) ;
1142+ expect ( onDayMouseEnterSpy ) . not . toHaveBeenCalled ( ) ;
1143+ } ) ;
1144+ } ) ;
1145+
1146+ it ( "should return disabled class if specified includeDate" , ( ) => {
1147+ const onDayClickSpy = jest . fn ( ) ;
1148+ const onDayMouseEnterSpy = jest . fn ( ) ;
1149+ const { container } = render (
1150+ < Month
1151+ day = { newDate ( "2015-12-01" ) }
1152+ includeDates = { [ newDate ( "2015-02-01" ) , newDate ( "2015-07-03" ) ] }
1153+ showQuarterYearPicker
1154+ onDayClick = { onDayClickSpy }
1155+ onDayMouseEnter = { onDayMouseEnterSpy }
1156+ /> ,
1157+ ) ;
1158+ // include quarter index
1159+ const quarterTexts = container . querySelectorAll (
1160+ ".react-datepicker__quarter-text" ,
1161+ ) ;
1162+
1163+ [ 1 , 3 ] . forEach ( ( i ) => {
1164+ const quarter = quarterTexts [ i ] ! ;
1165+ expect (
1166+ quarter . classList . contains ( "react-datepicker__quarter-text--disabled" ) ,
1167+ ) . toBe ( true ) ;
1168+ fireEvent . click ( quarter ) ;
1169+ expect ( onDayClickSpy ) . not . toHaveBeenCalled ( ) ;
1170+ fireEvent . mouseEnter ( quarter ) ;
1171+ expect ( onDayMouseEnterSpy ) . not . toHaveBeenCalled ( ) ;
1172+ } ) ;
1173+ } ) ;
1174+
11171175 describe ( "if quarter is selected" , ( ) => {
11181176 let monthComponent : HTMLElement ;
11191177 let quarter : HTMLElement ;
0 commit comments