File tree Expand file tree Collapse file tree 2 files changed +44
-0
lines changed Expand file tree Collapse file tree 2 files changed +44
-0
lines changed Original file line number Diff line number Diff line change @@ -73,6 +73,38 @@ test( "enable", function() {
73
73
equal ( 2 , element . val ( ) , "keyboard - value changes on key UP" ) ;
74
74
} ) ;
75
75
76
+ test ( "isValid" , function ( ) {
77
+ expect ( 8 ) ;
78
+ var element = $ ( "#spin" ) . spinner ( {
79
+ min : 0 ,
80
+ max : 10 ,
81
+ step : 2
82
+ } ) ,
83
+ spinner = element . spinner ( "instance" ) ;
84
+ ok ( ! spinner . isValid ( ) , "initial state is invalid" ) ;
85
+
86
+ element . val ( "this is not a number" ) ;
87
+ ok ( ! spinner . isValid ( ) , "text string is not valid" ) ;
88
+
89
+ element . val ( "0" ) ;
90
+ ok ( spinner . isValid ( ) , "min value is valid" ) ;
91
+
92
+ element . val ( "10" ) ;
93
+ ok ( spinner . isValid ( ) , "max value is valid" ) ;
94
+
95
+ element . val ( "4" ) ;
96
+ ok ( spinner . isValid ( ) , "inbetween step is valid" ) ;
97
+
98
+ element . val ( "-1" ) ;
99
+ ok ( ! spinner . isValid ( ) , "below min is invalid" ) ;
100
+
101
+ element . val ( "11" ) ;
102
+ ok ( ! spinner . isValid ( ) , "above max is invalid" ) ;
103
+
104
+ element . val ( "1" ) ;
105
+ ok ( ! spinner . isValid ( ) , "step mismatch is invalid" ) ;
106
+ } ) ;
107
+
76
108
test ( "pageDown" , function ( ) {
77
109
expect ( 4 ) ;
78
110
var element = $ ( "#spin" ) . val ( - 12 ) . spinner ( {
Original file line number Diff line number Diff line change @@ -418,6 +418,18 @@ $.widget( "ui.spinner", {
418
418
} ) ;
419
419
} ,
420
420
421
+ isValid : function ( ) {
422
+ var value = this . value ( ) ;
423
+
424
+ // null is invalid
425
+ if ( value === null ) {
426
+ return false ;
427
+ }
428
+
429
+ // if value gets adjusted, it's invalid
430
+ return value === this . _adjustValue ( value ) ;
431
+ } ,
432
+
421
433
// update the value without triggering change
422
434
_value : function ( value , allowAny ) {
423
435
var parsed ;
You can’t perform that action at this time.
0 commit comments