@@ -1669,73 +1669,51 @@ describe('IgxTimePicker', () => {
1669
1669
expect ( dummyInput ) . toEqual ( document . activeElement ) ;
1670
1670
} ) ) ;
1671
1671
1672
- it ( 'should apply disabled style for time outside the min and max values' , fakeAsync ( ( ) => {
1672
+ fit ( 'should apply disabled style for time outside the min and max values' , fakeAsync ( ( ) => {
1673
+ timePicker = new IgxTimePickerComponent ( null , null ) ;
1673
1674
fixture . detectChanges ( ) ;
1674
1675
timePicker . format = 'hh:mm:ss tt' ;
1675
1676
const date = new Date ( 2018 , 10 , 27 , 9 , 50 , 58 ) ;
1677
+ timePicker . value = date ;
1676
1678
1677
1679
timePicker . minValue = '09:15:10 AM' ;
1678
1680
timePicker . maxValue = '11:15:10 AM' ;
1679
1681
1680
- fixture . detectChanges ( ) ;
1681
- timePicker . value = date ;
1682
+ timePicker . selectedHour = '06' ;
1683
+ timePicker . selectedMinute = '25' ;
1684
+ timePicker . selectedSeconds = '00' ;
1685
+ timePicker . selectedAmPm = 'AM' ;
1682
1686
1683
- timePicker . openDialog ( ) ;
1684
1687
fixture . detectChanges ( ) ;
1685
- const hoursList = fixture . debugElement . queryAll ( By . directive ( IgxHourItemDirective ) ) ;
1686
- const minutesList = fixture . debugElement . queryAll ( By . directive ( IgxMinuteItemDirective ) ) ;
1687
- const secondsList = fixture . debugElement . queryAll ( By . directive ( IgxSecondsItemDirective ) ) ;
1688
- const ampmList = fixture . debugElement . queryAll ( By . directive ( IgxAmPmItemDirective ) ) ;
1689
1688
1690
- let hoursListItem = ( hoursList . find ( t => t . nativeElement . innerHTML === '09' ) ) . injector . get ( IgxHourItemDirective ) ;
1691
- let minutesListItem = ( minutesList . find ( t => t . nativeElement . innerHTML === '55' ) ) . injector . get ( IgxMinuteItemDirective ) ;
1692
- let secondsListItem = ( secondsList . find ( t => t . nativeElement . innerHTML === '58' ) ) . injector . get ( IgxSecondsItemDirective ) ;
1693
- let ampmListItem = ( ampmList . find ( t => t . nativeElement . innerHTML === 'AM' ) ) . injector . get ( IgxAmPmItemDirective ) ;
1689
+ // The selected time is 06:25:00 AM
1690
+ // Testing 09:25:00 AM
1691
+ expect ( timePicker . applyDisabledStyleForItem ( 'hour' , '9' ) ) . toBe ( false ) ;
1694
1692
1695
- expect ( hoursListItem . applyDisabledStyleForHours ) . toBe ( false ) ;
1696
- expect ( minutesListItem . applyDisabledStyleForMinutes ) . toBe ( false ) ;
1697
- expect ( secondsListItem . applyDisabledStyleForSeconds ) . toBe ( false ) ;
1698
- expect ( ampmListItem . applyDisabledStyleForAmPm ) . toBe ( false ) ;
1699
-
1700
- timePicker . scrollAmPmIntoView ( 'PM' ) ;
1701
- fixture . detectChanges ( ) ;
1702
- ampmListItem = ( ampmList . find ( t => t . nativeElement . innerHTML === 'PM' ) ) . injector . get ( IgxAmPmItemDirective ) ;
1693
+ timePicker . selectedHour = '9' ; // The selected time is 09:25:00 AM
1703
1694
1704
- expect ( hoursListItem . applyDisabledStyleForHours ) . toBe ( true ) ;
1705
- expect ( minutesListItem . applyDisabledStyleForMinutes ) . toBe ( true ) ;
1706
- expect ( secondsListItem . applyDisabledStyleForSeconds ) . toBe ( true ) ;
1707
- expect ( ampmListItem . applyDisabledStyleForAmPm ) . toBe ( true ) ;
1695
+ // Testing 10:25:00 AM
1696
+ expect ( timePicker . applyDisabledStyleForItem ( 'hour' , '10' ) ) . toBe ( false ) ;
1708
1697
1709
- hoursListItem = ( hoursList . find ( t => t . nativeElement . innerHTML === '06' ) ) . injector . get ( IgxHourItemDirective ) ;
1710
- minutesListItem = ( minutesList . find ( t => t . nativeElement . innerHTML === '35' ) ) . injector . get ( IgxMinuteItemDirective ) ;
1711
- secondsListItem = ( secondsList . find ( t => t . nativeElement . innerHTML === '55' ) ) . injector . get ( IgxSecondsItemDirective ) ;
1698
+ timePicker . selectedHour = '10' ;
1699
+ timePicker . selectedMinute = '10' ; // The selected time is 10:10:00 AM
1712
1700
1713
- expect ( hoursListItem . applyDisabledStyleForHours ) . toBe ( true ) ;
1714
- expect ( minutesListItem . applyDisabledStyleForMinutes ) . toBe ( true ) ;
1715
- expect ( secondsListItem . applyDisabledStyleForSeconds ) . toBe ( true ) ;
1716
- expect ( ampmListItem . applyDisabledStyleForAmPm ) . toBe ( true ) ;
1701
+ // Testing 11:10:00 AM
1702
+ expect ( timePicker . applyDisabledStyleForItem ( 'hour' , '11' ) ) . toBe ( false ) ;
1717
1703
1718
- timePicker . minValue = '06:45:57 AM' ;
1719
- timePicker . maxValue = '06:55:59 AM' ;
1704
+ timePicker . selectedHour = '11' ; // The selected time is 11:10:00 AM
1720
1705
1721
- hoursListItem = ( hoursList . find ( t => t . nativeElement . innerHTML === '06' ) ) . injector . get ( IgxHourItemDirective ) ;
1722
- minutesListItem = ( minutesList . find ( t => t . nativeElement . innerHTML === '50' ) ) . injector . get ( IgxMinuteItemDirective ) ;
1723
- secondsListItem = ( secondsList . find ( t => t . nativeElement . innerHTML === '58' ) ) . injector . get ( IgxSecondsItemDirective ) ;
1724
- ampmListItem = ( ampmList . find ( t => t . nativeElement . innerHTML === 'AM' ) ) . injector . get ( IgxAmPmItemDirective ) ;
1706
+ // Testing 12:11:00 AM
1707
+ expect ( timePicker . applyDisabledStyleForItem ( 'hour' , '12' ) ) . toBe ( true ) ;
1708
+ // Testing 11:28:00 AM
1709
+ expect ( timePicker . applyDisabledStyleForItem ( 'minute' , '28' ) ) . toBe ( true ) ;
1710
+ // Testing 11:10:28 AM
1711
+ expect ( timePicker . applyDisabledStyleForItem ( 'seconds' , '28' ) ) . toBe ( false ) ;
1725
1712
1726
- timePicker . scrollHourIntoView ( '06' ) ;
1727
- fixture . detectChanges ( ) ;
1728
- timePicker . scrollMinuteIntoView ( '50' ) ;
1729
- fixture . detectChanges ( ) ;
1730
- timePicker . scrollSecondsIntoView ( '58' ) ;
1731
- fixture . detectChanges ( ) ;
1732
- timePicker . scrollAmPmIntoView ( 'AM' ) ;
1733
- fixture . detectChanges ( ) ;
1713
+ timePicker . selectedAmPm = 'PM' ; // The selected time is 11:10:00 PM
1734
1714
1735
- expect ( hoursListItem . applyDisabledStyleForHours ) . toBe ( false ) ;
1736
- expect ( minutesListItem . applyDisabledStyleForMinutes ) . toBe ( false ) ;
1737
- expect ( secondsListItem . applyDisabledStyleForSeconds ) . toBe ( false ) ;
1738
- expect ( ampmListItem . applyDisabledStyleForAmPm ) . toBe ( false ) ;
1715
+ // Testing 11:10:00 AM
1716
+ expect ( timePicker . applyDisabledStyleForItem ( 'ampm' , 'AM' ) ) . toBe ( false ) ;
1739
1717
} ) ) ;
1740
1718
} ) ;
1741
1719
0 commit comments