6 // Slider Test Helper Functions
12 return element.find( ".ui-slider-handle" );
16 module( "slider: core" );
18 test( "keydown HOME on handle sets value to min", function() {
20 element = $( "<div></div>" );
24 orientation: "horizontal",
27 element.slider( options );
29 element.slider( "value", 0 );
31 handle().simulate( "keydown", { keyCode: $.ui.keyCode.HOME } );
32 equal(element.slider( "value" ), options.min );
34 element.slider( "destroy" );
36 element = $( "<div></div>" );
40 orientation: "vertical",
43 element.slider( options );
45 element.slider( "value", 0 );
47 handle().simulate( "keydown", { keyCode: $.ui.keyCode.HOME } );
48 equal(element.slider( "value" ), options.min) ;
50 element.slider( "destroy" );
53 test( "keydown END on handle sets value to max", function() {
55 element = $( "<div></div>" );
59 orientation: "horizontal",
62 element.slider( options );
64 element.slider( "value", 0 );
66 handle().simulate( "keydown", { keyCode: $.ui.keyCode.END } );
67 equal(element.slider( "value" ), options.max) ;
69 element.slider( "destroy" );
71 element = $( "<div></div>" );
75 orientation: "vertical",
78 element.slider( options );
80 element.slider( "value", 0 );
82 handle().simulate( "keydown", { keyCode: $.ui.keyCode.END } );
83 equal(element.slider( "value" ), options.max );
85 element.slider( "destroy" );
88 test( "keydown PAGE_UP on handle increases value by 1/5 range, not greater than max", function() {
90 $.each( [ "horizontal", "vertical" ], function( i, orientation ) {
91 element = $( "<div></div>" );
95 orientation: orientation,
98 element.slider( options );
100 element.slider( "value", 70);
102 handle().simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_UP } );
103 equal(element.slider( "value" ), 90);
105 handle().simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_UP } );
106 equal(element.slider( "value" ), 100);
108 element.slider( "destroy" );
112 test( "keydown PAGE_DOWN on handle decreases value by 1/5 range, not less than min", function() {
114 $.each( [ "horizontal", "vertical" ], function( i, orientation ) {
115 element = $( "<div></div>" );
119 orientation: orientation,
122 element.slider( options );
124 element.slider( "value", 30);
126 handle().simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_DOWN } );
127 equal(element.slider( "value" ), 10);
129 handle().simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_DOWN } );
130 equal(element.slider( "value" ), 0 );
132 element.slider( "destroy" );
136 test( "keydown UP on handle increases value by step, not greater than max", function() {
138 element = $( "<div></div>" );
142 orientation: "horizontal",
145 element.slider(options);
147 element.slider( "value", options.max - options.step );
149 handle().simulate( "keydown", { keyCode: $.ui.keyCode.UP } );
150 equal(element.slider( "value" ), options.max );
152 handle().simulate( "keydown", { keyCode: $.ui.keyCode.UP } );
153 equal(element.slider( "value" ), options.max );
155 element.slider( "destroy" );
157 element = $( "<div></div>" );
161 orientation: "vertical",
164 element.slider( options );
166 element.slider( "value", options.max - options.step );
168 handle().simulate( "keydown", { keyCode: $.ui.keyCode.UP } );
169 equal(element.slider( "value" ), options.max );
171 handle().simulate( "keydown", { keyCode: $.ui.keyCode.UP } );
172 equal(element.slider( "value" ), options.max );
174 element.slider( "destroy" );
177 test( "keydown RIGHT on handle increases value by step, not greater than max", function() {
179 element = $( "<div></div>" );
183 orientation: "horizontal",
186 element.slider(options);
188 element.slider( "value", options.max - options.step );
190 handle().simulate( "keydown", { keyCode: $.ui.keyCode.RIGHT } );
191 equal(element.slider( "value" ), options.max);
193 handle().simulate( "keydown", { keyCode: $.ui.keyCode.RIGHT } );
194 equal(element.slider( "value" ), options.max );
196 element.slider( "destroy" );
198 element = $( "<div></div>" );
202 orientation: "vertical",
205 element.slider( options );
207 element.slider( "value", options.max - options.step );
209 handle().simulate( "keydown", { keyCode: $.ui.keyCode.RIGHT } );
210 equal(element.slider( "value" ), options.max );
212 handle().simulate( "keydown", { keyCode: $.ui.keyCode.RIGHT } );
213 equal(element.slider( "value" ), options.max );
215 element.slider( "destroy" );
218 test( "keydown DOWN on handle decreases value by step, not less than min", function() {
220 element = $( "<div></div>" );
224 orientation: "horizontal",
227 element.slider( options );
229 element.slider( "value", options.min + options.step );
231 handle().simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
232 equal(element.slider( "value" ), options.min);
234 handle().simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
235 equal(element.slider( "value" ), options.min );
237 element.slider( "destroy" );
239 element = $( "<div></div>" );
243 orientation: "vertical",
246 element.slider( options );
248 element.slider( "value", options.min + options.step );
250 handle().simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
251 equal(element.slider( "value" ), options.min);
253 handle().simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
254 equal(element.slider( "value" ), options.min );
256 element.slider( "destroy" );
259 test( "keydown LEFT on handle decreases value by step, not less than min", function() {
261 element = $( "<div></div>" );
265 orientation: "horizontal",
268 element.slider(options);
270 element.slider( "value", options.min + options.step );
272 handle().simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } );
273 equal(element.slider( "value" ), options.min );
275 handle().simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } );
276 equal(element.slider( "value" ), options.min );
278 element.slider( "destroy" );
280 element = $( "<div></div>" );
284 orientation: "vertical",
287 element.slider( options );
289 element.slider( "value", options.min + options.step );
291 handle().simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } );
292 equal(element.slider( "value" ), options.min );
294 handle().simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } );
295 equal(element.slider( "value" ), options.min );
297 element.slider( "destroy" );