@@ -810,6 +810,7 @@ test('parseDate', function() {
810
810
gmtDate . setMinutes ( gmtDate . getMinutes ( ) - gmtDate . getTimezoneOffset ( ) ) ;
811
811
TestHelpers . datepicker . equalsDate ( $ . datepicker . parseDate ( '@' , '981158400000' ) , gmtDate , 'Parse date @' ) ;
812
812
TestHelpers . datepicker . equalsDate ( $ . datepicker . parseDate ( '!' , '631167552000000000' ) , gmtDate , 'Parse date !' ) ;
813
+
813
814
fr = $ . datepicker . regional . fr ;
814
815
settings = { dayNamesShort : fr . dayNamesShort , dayNames : fr . dayNames ,
815
816
monthNamesShort : fr . monthNamesShort , monthNames : fr . monthNames } ;
@@ -819,12 +820,11 @@ test('parseDate', function() {
819
820
new Date ( 2001 , 4 - 1 , 9 ) , 'Parse date d MM DD yy with settings' ) ;
820
821
TestHelpers . datepicker . equalsDate ( $ . datepicker . parseDate ( 'DD, MM d, yy' , 'Lundi, Avril 9, 2001' , settings ) ,
821
822
new Date ( 2001 , 4 - 1 , 9 ) , 'Parse date DD, MM d, yy with settings' ) ;
822
- TestHelpers . datepicker . equalsDate ( $ . datepicker . parseDate ( '\'jour\' d \'de\' MM (\'\'DD\'\'), yy' ,
823
- 'jour 9 de Avril (\'Lundi\'), 2001' , settings ) , new Date ( 2001 , 4 - 1 , 9 ) ,
824
- 'Parse date \'jour\' d \'de\' MM (\'\'DD\'\'), yy with settings' ) ;
823
+ TestHelpers . datepicker . equalsDate ( $ . datepicker . parseDate ( "'jour' d 'de' MM (''DD''), yy" , "jour 9 de Avril ('Lundi'), 2001" , settings ) ,
824
+ new Date ( 2001 , 4 - 1 , 9 ) , "Parse date 'jour' d 'de' MM (''DD''), yy with settings" ) ;
825
825
826
826
zh = $ . datepicker . regional [ 'zh-CN' ] ;
827
- TestHelpers . datepicker . equalsDate ( $ . datepicker . parseDate ( 'yy M d' , '2011 十一 22' , zh ) ,
827
+ TestHelpers . datepicker . equalsDate ( $ . datepicker . parseDate ( 'yy M d' , '2011 十一月 22' , zh ) ,
828
828
new Date ( 2011 , 11 - 1 , 22 ) , 'Parse date yy M d with zh-CN' ) ;
829
829
} ) ;
830
830
@@ -881,6 +881,26 @@ test('parseDateErrors', function() {
881
881
'Lun. 9 Apr 01 - D d M y' , 'Unknown name at position 7' ) ;
882
882
} ) ;
883
883
884
+ test ( 'Ticket #7244: date parser does not fail when too many numbers are passed into the date function' , function ( ) {
885
+ expect ( 4 ) ;
886
+ var date ;
887
+ try {
888
+ date = $ . datepicker . parseDate ( 'dd/mm/yy' , '18/04/19881' ) ;
889
+ ok ( false , "Did not properly detect an invalid date" ) ;
890
+ } catch ( e ) {
891
+ ok ( "invalid date detected" ) ;
892
+ }
893
+
894
+ try {
895
+ date = $ . datepicker . parseDate ( 'dd/mm/yy' , '18/04/1988 @ 2:43 pm' ) ;
896
+ equal ( date . getDate ( ) , 18 ) ;
897
+ equal ( date . getMonth ( ) , 3 ) ;
898
+ equal ( date . getFullYear ( ) , 1988 ) ;
899
+ } catch ( e ) {
900
+ ok ( false , "Did not properly parse date with extra text separated by whitespace" ) ;
901
+ }
902
+ } ) ;
903
+
884
904
test ( 'formatDate' , function ( ) {
885
905
expect ( 16 ) ;
886
906
TestHelpers . datepicker . init ( '#inp' ) ;
@@ -924,4 +944,44 @@ test('formatDate', function() {
924
944
'Format date \'jour\' d \'de\' MM (\'\'DD\'\'), yy with settings' ) ;
925
945
} ) ;
926
946
947
+ test ( 'Ticket 6827: formatDate day of year calculation is wrong during day lights savings time' , function ( ) {
948
+ expect ( 1 ) ;
949
+ var time = $ . datepicker . formatDate ( "oo" , new Date ( "2010/03/30 12:00:00 CDT" ) ) ;
950
+ equal ( time , "089" ) ;
951
+ } ) ;
952
+
953
+ test ( 'Ticket 7602: Stop datepicker from appearing with beforeShow event handler' , function ( ) {
954
+ expect ( 3 ) ;
955
+ var inp = TestHelpers . datepicker . init ( '#inp' , {
956
+ beforeShow : function ( ) {
957
+ return false ;
958
+ }
959
+ } ) ,
960
+ dp = $ ( '#ui-datepicker-div' ) ;
961
+ inp . datepicker ( 'show' ) ;
962
+ equal ( dp . css ( 'display' ) , 'none' , "beforeShow returns false" ) ;
963
+ inp . datepicker ( 'destroy' ) ;
964
+
965
+ inp = TestHelpers . datepicker . init ( '#inp' , {
966
+ beforeShow : function ( ) {
967
+ }
968
+ } ) ;
969
+ dp = $ ( '#ui-datepicker-div' ) ;
970
+ inp . datepicker ( 'show' ) ;
971
+ equal ( dp . css ( 'display' ) , 'block' , "beforeShow returns nothing" ) ;
972
+ inp . datepicker ( 'hide' ) ;
973
+ inp . datepicker ( 'destroy' ) ;
974
+
975
+ inp = TestHelpers . datepicker . init ( '#inp' , {
976
+ beforeShow : function ( ) {
977
+ return true ;
978
+ }
979
+ } ) ;
980
+ dp = $ ( '#ui-datepicker-div' ) ;
981
+ inp . datepicker ( 'show' ) ;
982
+ equal ( dp . css ( 'display' ) , 'block' , "beforeShow returns true" ) ;
983
+ inp . datepicker ( 'hide' ) ;
984
+ inp . datepicker ( 'destroy' ) ;
985
+ } ) ;
986
+
927
987
} ) ( jQuery ) ;
0 commit comments