@@ -4883,4 +4883,76 @@ describe("DatePicker", () => {
48834883      expect ( eventObject . target ?. value ) . toBe ( inputValue ) ; 
48844884    } ) ; 
48854885  } ) ; 
4886+ 
4887+   describe ( "disabled" ,  ( )  =>  { 
4888+     const  validateAllDisabled  =  ( container : HTMLElement ,  className : string )  =>  { 
4889+       const  allDays  =  Array . from ( container . querySelectorAll ( `.${ className }  ` ) ) ; 
4890+       expect ( allDays . length ) . toBeGreaterThan ( 0 ) ; 
4891+       expect ( 
4892+         allDays . every ( ( day )  => 
4893+           day . classList . contains ( `${ className }  --disabled` ) , 
4894+         ) , 
4895+       ) . toBe ( true ) ; 
4896+     } ; 
4897+ 
4898+     const  validateNonExistence  =  ( 
4899+       container : HTMLElement , 
4900+       querySelector : string , 
4901+     )  =>  { 
4902+       const  element  =  container . querySelector ( querySelector ) ; 
4903+       expect ( element ) . toBeFalsy ( ) ; 
4904+     } ; 
4905+ 
4906+     it ( "should disable all days and headers in DatePicker when disabled prop is true" ,  ( )  =>  { 
4907+       const  {  container }  =  render ( < DatePicker  inline  disabled  /> ) ; 
4908+ 
4909+       validateAllDisabled ( container ,  "react-datepicker__day" ) ; 
4910+       validateAllDisabled ( container ,  "react-datepicker__day-name" ) ; 
4911+       validateNonExistence ( container ,  "react-datepicker__navigation" ) ; 
4912+     } ) ; 
4913+ 
4914+     it ( "should disable all days and headers in DatePicker Range Selector when disabled prop is true" ,  ( )  =>  { 
4915+       const  {  container }  =  render ( < DatePicker  selectsRange  inline  disabled  /> ) ; 
4916+ 
4917+       validateAllDisabled ( container ,  "react-datepicker__day" ) ; 
4918+       validateAllDisabled ( container ,  "react-datepicker__day-name" ) ; 
4919+       validateNonExistence ( container ,  "react-datepicker__navigation" ) ; 
4920+     } ) ; 
4921+ 
4922+     it ( "should disable all days and headers in MonthPicker when disabled prop is true" ,  ( )  =>  { 
4923+       const  {  container }  =  render ( 
4924+         < DatePicker  showMonthYearPicker  inline  disabled  /> , 
4925+       ) ; 
4926+ 
4927+       validateAllDisabled ( container ,  "react-datepicker__month-text" ) ; 
4928+       validateNonExistence ( container ,  "react-datepicker__navigation" ) ; 
4929+     } ) ; 
4930+ 
4931+     it ( "should disable all days and headers in YearPicker when disabled prop is true" ,  ( )  =>  { 
4932+       const  {  container }  =  render ( 
4933+         < DatePicker  showYearPicker  inline  disabled  /> , 
4934+       ) ; 
4935+ 
4936+       validateAllDisabled ( container ,  "react-datepicker__year-text" ) ; 
4937+       validateNonExistence ( container ,  "react-datepicker__navigation" ) ; 
4938+     } ) ; 
4939+ 
4940+     it ( "should disable all days and headers in WeekPicker when disabled prop is true" ,  ( )  =>  { 
4941+       const  {  container }  =  render ( 
4942+         < DatePicker  showWeekNumbers  showWeekPicker  inline  disabled  /> , 
4943+       ) ; 
4944+ 
4945+       validateAllDisabled ( container ,  "react-datepicker__day" ) ; 
4946+       validateNonExistence ( container ,  "react-datepicker__navigation" ) ; 
4947+     } ) ; 
4948+ 
4949+     it ( "should disable all days and headers in QuarterPicker when disabled prop is true" ,  ( )  =>  { 
4950+       const  {  container }  =  render ( 
4951+         < DatePicker  showQuarterYearPicker  inline  disabled  /> , 
4952+       ) ; 
4953+ 
4954+       validateAllDisabled ( container ,  "react-datepicker__quarter-text" ) ; 
4955+       validateNonExistence ( container ,  "react-datepicker__navigation" ) ; 
4956+     } ) ; 
4957+   } ) ; 
48864958} ) ; 
0 commit comments