source: main/trunk/greenstone3/web/interfaces/oran/js/jquery-ui-1.8rc1/tests/unit/slider/slider_core.js@ 24245

Last change on this file since 24245 was 24245, checked in by sjb48, 13 years ago

Oran code for supporting format changes to document.

  • Property svn:executable set to *
File size: 6.3 KB
Line 
1/*
2 * slider unit tests
3 */
4(function($) {
5//
6// Slider Test Helper Functions
7//
8
9var el, options;
10
11function handle() {
12 return el.find(".ui-slider-handle");
13}
14
15// Slider Tests
16module("slider: core");
17
18test("keydown HOME on handle sets value to min", function() {
19 el = $('<div></div>');
20 options = {
21 max: 5,
22 min: -5,
23 orientation: 'horizontal',
24 step: 1
25 };
26 el.slider(options);
27
28 el.slider("value", 0);
29
30 handle().simulate("keydown", { keyCode: $.ui.keyCode.HOME });
31 equals(el.slider("value"), options.min);
32
33 el.slider('destroy');
34
35 el = $('<div></div>');
36 options = {
37 max: 5,
38 min: -5,
39 orientation: 'vertical',
40 step: 1
41 };
42 el.slider(options);
43
44 el.slider("value", 0);
45
46 handle().simulate("keydown", { keyCode: $.ui.keyCode.HOME });
47 equals(el.slider("value"), options.min);
48
49 el.slider('destroy');
50});
51
52test("keydown END on handle sets value to max", function() {
53 el = $('<div></div>');
54 options = {
55 max: 5,
56 min: -5,
57 orientation: 'horizontal',
58 step: 1
59 };
60 el.slider(options);
61
62 el.slider("value", 0);
63
64 handle().simulate("keydown", { keyCode: $.ui.keyCode.END });
65 equals(el.slider("value"), options.max);
66
67 el.slider('destroy');
68
69 el = $('<div></div>');
70 options = {
71 max: 5,
72 min: -5,
73 orientation: 'vertical',
74 step: 1
75 };
76 el.slider(options);
77
78 el.slider("value", 0);
79
80 handle().simulate("keydown", { keyCode: $.ui.keyCode.END });
81 equals(el.slider("value"), options.max);
82
83 el.slider('destroy');
84});
85
86test("keydown PAGE_UP on handle increases value by 1/5 range, not greater than max", function() {
87 $.each(['horizontal', 'vertical'], function(i, orientation) {
88 el = $('<div></div>');
89 options = {
90 max: 100,
91 min: 0,
92 orientation: orientation,
93 step: 1
94 };
95 el.slider(options);
96
97 el.slider("value", 70);
98
99 handle().simulate("keydown", { keyCode: $.ui.keyCode.PAGE_UP });
100 equals(el.slider("value"), 90);
101
102 handle().simulate("keydown", { keyCode: $.ui.keyCode.PAGE_UP });
103 equals(el.slider("value"), 100);
104
105 el.slider("destroy");
106 });
107});
108
109test("keydown PAGE_DOWN on handle decreases value by 1/5 range, not less than min", function() {
110 $.each(['horizontal', 'vertical'], function(i, orientation) {
111 el = $('<div></div>');
112 options = {
113 max: 100,
114 min: 0,
115 orientation: orientation,
116 step: 1
117 };
118 el.slider(options);
119
120 el.slider("value", 30);
121
122 handle().simulate("keydown", { keyCode: $.ui.keyCode.PAGE_DOWN });
123 equals(el.slider("value"), 10);
124
125 handle().simulate("keydown", { keyCode: $.ui.keyCode.PAGE_DOWN });
126 equals(el.slider("value"), 0);
127
128 el.slider("destroy");
129 });
130});
131
132test("keydown UP on handle increases value by step, not greater than max", function() {
133 el = $('<div></div>');
134 options = {
135 max: 5,
136 min: -5,
137 orientation: 'horizontal',
138 step: 1
139 };
140 el.slider(options);
141
142 el.slider("value", options.max - options.step);
143
144 handle().simulate("keydown", { keyCode: $.ui.keyCode.UP });
145 equals(el.slider("value"), options.max);
146
147 handle().simulate("keydown", { keyCode: $.ui.keyCode.UP });
148 equals(el.slider("value"), options.max);
149
150 el.slider("destroy");
151
152 el = $('<div></div>');
153 options = {
154 max: 5,
155 min: -5,
156 orientation: 'vertical',
157 step: 1
158 };
159 el.slider(options);
160
161 el.slider("value", options.max - options.step);
162
163 handle().simulate("keydown", { keyCode: $.ui.keyCode.UP });
164 equals(el.slider("value"), options.max);
165
166 handle().simulate("keydown", { keyCode: $.ui.keyCode.UP });
167 equals(el.slider("value"), options.max);
168
169 el.slider("destroy");
170});
171
172test("keydown RIGHT on handle increases value by step, not greater than max", function() {
173 el = $('<div></div>');
174 options = {
175 max: 5,
176 min: -5,
177 orientation: 'horizontal',
178 step: 1
179 };
180 el.slider(options);
181
182 el.slider("value", options.max - options.step);
183
184 handle().simulate("keydown", { keyCode: $.ui.keyCode.RIGHT });
185 equals(el.slider("value"), options.max);
186
187 handle().simulate("keydown", { keyCode: $.ui.keyCode.RIGHT });
188 equals(el.slider("value"), options.max);
189
190 el.slider("destroy");
191
192 el = $('<div></div>');
193 options = {
194 max: 5,
195 min: -5,
196 orientation: 'vertical',
197 step: 1
198 };
199 el.slider(options);
200
201 el.slider("value", options.max - options.step);
202
203 handle().simulate("keydown", { keyCode: $.ui.keyCode.RIGHT });
204 equals(el.slider("value"), options.max);
205
206 handle().simulate("keydown", { keyCode: $.ui.keyCode.RIGHT });
207 equals(el.slider("value"), options.max);
208
209 el.slider("destroy");
210});
211
212test("keydown DOWN on handle decreases value by step, not less than min", function() {
213 el = $('<div></div>');
214 options = {
215 max: 5,
216 min: -5,
217 orientation: 'horizontal',
218 step: 1
219 };
220 el.slider(options);
221
222 el.slider("value", options.min + options.step);
223
224 handle().simulate("keydown", { keyCode: $.ui.keyCode.DOWN });
225 equals(el.slider("value"), options.min);
226
227 handle().simulate("keydown", { keyCode: $.ui.keyCode.DOWN });
228 equals(el.slider("value"), options.min);
229
230 el.slider("destroy");
231
232 el = $('<div></div>');
233 options = {
234 max: 5,
235 min: -5,
236 orientation: 'vertical',
237 step: 1
238 };
239 el.slider(options);
240
241 el.slider("value", options.min + options.step);
242
243 handle().simulate("keydown", { keyCode: $.ui.keyCode.DOWN });
244 equals(el.slider("value"), options.min);
245
246 handle().simulate("keydown", { keyCode: $.ui.keyCode.DOWN });
247 equals(el.slider("value"), options.min);
248
249 el.slider("destroy");
250});
251
252test("keydown LEFT on handle decreases value by step, not less than min", function() {
253 el = $('<div></div>');
254 options = {
255 max: 5,
256 min: -5,
257 orientation: 'horizontal',
258 step: 1
259 };
260 el.slider(options);
261
262 el.slider("value", options.min + options.step);
263
264 handle().simulate("keydown", { keyCode: $.ui.keyCode.LEFT });
265 equals(el.slider("value"), options.min);
266
267 handle().simulate("keydown", { keyCode: $.ui.keyCode.LEFT });
268 equals(el.slider("value"), options.min);
269
270 el.slider("destroy");
271
272 el = $('<div></div>');
273 options = {
274 max: 5,
275 min: -5,
276 orientation: 'vertical',
277 step: 1
278 };
279 el.slider(options);
280
281 el.slider("value", options.min + options.step);
282
283 handle().simulate("keydown", { keyCode: $.ui.keyCode.LEFT });
284 equals(el.slider("value"), options.min);
285
286 handle().simulate("keydown", { keyCode: $.ui.keyCode.LEFT });
287 equals(el.slider("value"), options.min);
288
289 el.slider("destroy");
290});
291
292})(jQuery);
Note: See TracBrowser for help on using the repository browser.