| 1 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
|---|
| 2 | "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
|---|
| 3 | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> |
|---|
| 4 | <head> |
|---|
| 5 | <title>script.aculo.us Unit test file</title> |
|---|
| 6 | <meta http-equiv="content-type" content="text/html; charset=utf-8" /> |
|---|
| 7 | <script src="../../lib/prototype.js" type="text/javascript"></script> |
|---|
| 8 | <script src="../../src/scriptaculous.js" type="text/javascript"></script> |
|---|
| 9 | <script src="../../src/unittest.js" type="text/javascript"></script> |
|---|
| 10 | <link rel="stylesheet" href="../test.css" type="text/css" /> |
|---|
| 11 | </head> |
|---|
| 12 | <body> |
|---|
| 13 | <h1>script.aculo.us Unit test file</h1> |
|---|
| 14 | <p> |
|---|
| 15 | Tests for slider.js |
|---|
| 16 | </p> |
|---|
| 17 | |
|---|
| 18 | <div id="track1" style="width:200px;background-color:#aaa;height:5px;"> |
|---|
| 19 | <div id="handle1" style="width:15px;height:25px;background-color:#f00;"> </div> |
|---|
| 20 | </div> |
|---|
| 21 | |
|---|
| 22 | <div id="track2-vertical" style="height:100px;background-color:#aaa;width:5px;"> |
|---|
| 23 | <div id="handle2-vertical" style="width:25px;height:10px;background-color:#f00;"> </div> |
|---|
| 24 | </div> |
|---|
| 25 | |
|---|
| 26 | <div id="track2-horizontal" style="height:5px;background-color:#aaa;width:100px;"> |
|---|
| 27 | <div id="handle2-horizontal" style="width:10px;height:25px;background-color:#f00;"> </div> |
|---|
| 28 | </div> |
|---|
| 29 | |
|---|
| 30 | <div id="track3" style="width:300px;background-color:#cfb;height:30px;"> |
|---|
| 31 | <span id="handle3-1">1</span> |
|---|
| 32 | <span id="handle3-2">2</span> |
|---|
| 33 | <span id="handle3-3">3</span> |
|---|
| 34 | </div> |
|---|
| 35 | |
|---|
| 36 | <div id="track4" style="width:300px;position:relative;background-color:#cbf;height:30px;"> |
|---|
| 37 | <span id="handle4-1" style="top:0;left:0;position:absolute;background-color:#f00;">1</span> |
|---|
| 38 | <span id="handle4-2" style="top:0;left:0;position:absolute;background-color:#0f0;">2</span> |
|---|
| 39 | <span id="handle4-3" style="top:0;left:0;position:absolute;background-color:#00f;">3</span> |
|---|
| 40 | </div> |
|---|
| 41 | |
|---|
| 42 | <div id="track5" style="width:300px;background-color:#cbf;height:30px;position:relative;z-index:0;"> |
|---|
| 43 | <div id="handle5-1" style="top:0;left:0;position:absolute;background-color:#f00;z-index:2">1</div> |
|---|
| 44 | <div id="handle5-2" style="top:0;left:0;position:absolute;background-color:#0f0;z-index:2">2</div> |
|---|
| 45 | <div id="handle5-3" style="top:0;left:0;position:absolute;background-color:#00f;z-index:2">3</div> |
|---|
| 46 | |
|---|
| 47 | <div id="span5-1" style="top:0;left:0;position:absolute;background-color:#000;height:20px;z-index:1;"> </div> |
|---|
| 48 | <div id="span5-2" style="top:0;left:0;position:absolute;background-color:#444;height:20px;z-index:1;"> </div> |
|---|
| 49 | </div> |
|---|
| 50 | |
|---|
| 51 | <div id="track6" style="width:20px;background-color:#cbf;height:100px;position:relative;z-index:0;"> |
|---|
| 52 | <div id="handle6-1" style="top:0;left:0;height:13px;position:absolute;background-color:#f00;z-index:2">1</div> |
|---|
| 53 | <div id="handle6-2" style="top:0;left:0;height:13px;position:absolute;background-color:#0f0;z-index:2">2</div> |
|---|
| 54 | <div id="handle6-3" style="top:0;left:0;height:13px;position:absolute;background-color:#00f;z-index:2">3</div> |
|---|
| 55 | |
|---|
| 56 | <div id="span6-1" style="top:0;left:0;position:absolute;background-color:#000;width:20px;z-index:1;"> </div> |
|---|
| 57 | <div id="span6-2" style="top:0;left:0;position:absolute;background-color:#444;width:20px;z-index:1;"> </div> |
|---|
| 58 | </div> |
|---|
| 59 | |
|---|
| 60 | <div id="track7" style="width:200px;background-color:#cbf;height:30px;position:relative;z-index:0;"> |
|---|
| 61 | <div id="handle7-1" style="top:0;left:0;position:absolute;background-color:#f88;z-index:2">1</div> |
|---|
| 62 | <div id="handle7-2" style="top:0;left:0;position:absolute;background-color:#8f8;z-index:2">2</div> |
|---|
| 63 | <div id="handle7-3" style="top:0;left:0;position:absolute;background-color:#88f;z-index:2">3</div> |
|---|
| 64 | |
|---|
| 65 | <div id="span7-1" style="top:0;left:0;position:absolute;background-color:#000;height:20px;z-index:1;"> </div> |
|---|
| 66 | <div id="span7-2" style="top:0;left:0;position:absolute;background-color:#444;height:20px;z-index:1;"> </div> |
|---|
| 67 | |
|---|
| 68 | <div id="span7-start" style="top:0;left:0;position:absolute;background-color:#f00;height:20px;z-index:1;"> </div> |
|---|
| 69 | <div id="span7-end" style="top:0;left:0;position:absolute;background-color:#00f;height:20px;z-index:1;"> </div> |
|---|
| 70 | </div> |
|---|
| 71 | |
|---|
| 72 | |
|---|
| 73 | <div id="debug"> </div> |
|---|
| 74 | |
|---|
| 75 | <!-- Log output --> |
|---|
| 76 | <div id="testlog"> </div> |
|---|
| 77 | |
|---|
| 78 | <!-- Tests follow --> |
|---|
| 79 | <script type="text/javascript" language="javascript" charset="utf-8"> |
|---|
| 80 | // <![CDATA[ |
|---|
| 81 | var globalValue; |
|---|
| 82 | |
|---|
| 83 | new Test.Unit.Runner({ |
|---|
| 84 | |
|---|
| 85 | testSliderBasics: function() { with(this) { |
|---|
| 86 | var slider = new Control.Slider('handle1', 'track1'); |
|---|
| 87 | assertInstanceOf(Control.Slider, slider); |
|---|
| 88 | |
|---|
| 89 | assertEqual('horizontal', slider.axis); |
|---|
| 90 | assertEqual(false, slider.disabled); |
|---|
| 91 | assertEqual(0, slider.value); |
|---|
| 92 | |
|---|
| 93 | slider.dispose(); |
|---|
| 94 | }}, |
|---|
| 95 | |
|---|
| 96 | testSliderValues: function() { with(this) { |
|---|
| 97 | ['horizontal', 'vertical'].each( function(axis) { |
|---|
| 98 | var slider = new Control.Slider('handle2-'+axis, 'track2-'+axis, {values:[0.2,0.4,0.6,0.8,1],axis:axis}); |
|---|
| 99 | assertEqual(axis, slider.axis); |
|---|
| 100 | assertEqual(0.2, slider.value); |
|---|
| 101 | |
|---|
| 102 | slider.setValue(0.35); |
|---|
| 103 | assertEqual(0.4, slider.value); |
|---|
| 104 | |
|---|
| 105 | slider.setValueBy(0.1); |
|---|
| 106 | assertEqual(0.6, slider.value); |
|---|
| 107 | slider.setValueBy(-0.6); |
|---|
| 108 | assertEqual(0.2, slider.value); |
|---|
| 109 | |
|---|
| 110 | slider.setValue(1); |
|---|
| 111 | assertEqual(1, slider.value); |
|---|
| 112 | |
|---|
| 113 | slider.setValue(-2); |
|---|
| 114 | assertEqual(0.2, slider.value); |
|---|
| 115 | |
|---|
| 116 | slider.setValue(55555); |
|---|
| 117 | assertEqual(1, slider.value); |
|---|
| 118 | |
|---|
| 119 | // leave active to be able to play around with the sliders |
|---|
| 120 | // slider.dispose(); |
|---|
| 121 | }); |
|---|
| 122 | assertEqual("90px", $('handle2-horizontal').style.left); |
|---|
| 123 | assertEqual("90px", $('handle2-vertical').style.top); |
|---|
| 124 | }}, |
|---|
| 125 | |
|---|
| 126 | testSliderInitialValues: function() { with(this) { |
|---|
| 127 | var slider = new Control.Slider('handle1', 'track1',{sliderValue:0.5}); |
|---|
| 128 | assertEqual(0.5, slider.value); |
|---|
| 129 | |
|---|
| 130 | var slider = new Control.Slider(['handle4-1','handle4-2','handle4-3'], 'track4', { |
|---|
| 131 | sliderValue:[50,145,170], |
|---|
| 132 | values:[50,150,160,170,180], |
|---|
| 133 | range:$R(50,180) |
|---|
| 134 | }); |
|---|
| 135 | assertEqual(50, slider.value); |
|---|
| 136 | assertEqual(50, slider.values[0]); |
|---|
| 137 | assertEqual(150, slider.values[1]); |
|---|
| 138 | assertEqual(170, slider.values[2]); |
|---|
| 139 | slider.dispose(); |
|---|
| 140 | |
|---|
| 141 | var slider = new Control.Slider(['handle4-1','handle4-2','handle4-3'], 'track4', { |
|---|
| 142 | sliderValue:[50,145,170], |
|---|
| 143 | values:[50,150,160,170,180] |
|---|
| 144 | }); |
|---|
| 145 | assertEqual(50, slider.value); |
|---|
| 146 | assertEqual(50, slider.values[0]); |
|---|
| 147 | assertEqual(150, slider.values[1]); |
|---|
| 148 | assertEqual(170, slider.values[2]); |
|---|
| 149 | slider.dispose(); |
|---|
| 150 | |
|---|
| 151 | var slider = new Control.Slider(['handle4-1','handle4-2','handle4-3'], 'track4', { |
|---|
| 152 | restricted:true, |
|---|
| 153 | sliderValue:[50,145,170], |
|---|
| 154 | values:[50,150,160,170,180] |
|---|
| 155 | }); |
|---|
| 156 | assertEqual(50, slider.value); |
|---|
| 157 | assertEqual(50, slider.values[0]); |
|---|
| 158 | assertEqual(150, slider.values[1]); |
|---|
| 159 | assertEqual(170, slider.values[2]); |
|---|
| 160 | slider.dispose(); |
|---|
| 161 | }}, |
|---|
| 162 | |
|---|
| 163 | testSliderOnChange: function() { with(this) { |
|---|
| 164 | var slider = new Control.Slider('handle1', 'track1', { onChange:function(v){ globalValue = v; } }); |
|---|
| 165 | slider.setValue(1); |
|---|
| 166 | assert(1, globalValue); |
|---|
| 167 | assert(1, slider.value); |
|---|
| 168 | |
|---|
| 169 | slider.setDisabled(); |
|---|
| 170 | slider.setValue(0.5); |
|---|
| 171 | assert(1, globalValue); |
|---|
| 172 | assert(1, slider.value); |
|---|
| 173 | |
|---|
| 174 | slider.setEnabled(); |
|---|
| 175 | slider.setValue(0.2); |
|---|
| 176 | assert(0.2, globalValue); |
|---|
| 177 | assert(0.2, slider.value); |
|---|
| 178 | |
|---|
| 179 | // s.event should be null if setValue is called from script |
|---|
| 180 | var slider = new Control.Slider(['handle3-1','handle3-2','handle3-3'], 'track3', { |
|---|
| 181 | onChange:function(v, s){ if(!s.event) globalValue = v; } }); |
|---|
| 182 | |
|---|
| 183 | slider.setValue(0.5,1); |
|---|
| 184 | assertEqual([0,0.5,0].inspect(), globalValue.inspect()); |
|---|
| 185 | assert(!slider.event); |
|---|
| 186 | |
|---|
| 187 | slider.dispose(); |
|---|
| 188 | }}, |
|---|
| 189 | |
|---|
| 190 | testMultipleHandles: function() { with(this) { |
|---|
| 191 | var slider = new Control.Slider(['handle3-1','handle3-2','handle3-3'], 'track3', {range:$R(0,300)}); |
|---|
| 192 | assertInstanceOf(Control.Slider, slider); |
|---|
| 193 | |
|---|
| 194 | slider.setValue(20, 0); |
|---|
| 195 | slider.setValue(50, 1); |
|---|
| 196 | slider.setValue(70, 2); |
|---|
| 197 | assertEqual(20, slider.values[0]); |
|---|
| 198 | assertEqual(50, slider.values[1]); |
|---|
| 199 | assertEqual(70, slider.values[2]); |
|---|
| 200 | assertEqual("20px", slider.handles[0].style.left); |
|---|
| 201 | assertEqual("49px", slider.handles[1].style.left); |
|---|
| 202 | assertEqual("68px", slider.handles[2].style.left); |
|---|
| 203 | |
|---|
| 204 | // should change last manipulated handled by -10, |
|---|
| 205 | // so check for handle with idx 2 |
|---|
| 206 | slider.setValueBy(-10); |
|---|
| 207 | assertEqual(60, slider.values[2]); |
|---|
| 208 | |
|---|
| 209 | slider.setValueBy(10, 0); |
|---|
| 210 | assertEqual(20, slider.values[0]); |
|---|
| 211 | slider.setValueBy(10, 1); |
|---|
| 212 | assertEqual(60, slider.values[1]); |
|---|
| 213 | slider.setValueBy(20, slider.activeHandleIdx); |
|---|
| 214 | assertEqual(80, slider.values[1]); |
|---|
| 215 | }}, |
|---|
| 216 | |
|---|
| 217 | testMultipleHandlesValues: function() { with(this) { |
|---|
| 218 | var slider = new Control.Slider(['handle4-1','handle4-2','handle4-3'], 'track4', {values:[50,150,160,170,180],range:$R(50,180)}); |
|---|
| 219 | assertInstanceOf(Control.Slider, slider); |
|---|
| 220 | |
|---|
| 221 | slider.setValue(20, 0); |
|---|
| 222 | slider.setValue(150, 2); |
|---|
| 223 | slider.setValue(179, 1); |
|---|
| 224 | |
|---|
| 225 | assertEqual(50, slider.values[0]); |
|---|
| 226 | assertEqual(150, slider.values[2]); |
|---|
| 227 | assertEqual(180, slider.values[1]); |
|---|
| 228 | |
|---|
| 229 | assertEqual("0px", slider.handles[0].style.left); |
|---|
| 230 | assertEqual("225px", slider.handles[2].style.left); |
|---|
| 231 | assertEqual("293px", slider.handles[1].style.left); |
|---|
| 232 | |
|---|
| 233 | assertEqual($R(50,150).inspect(), slider.getRange().inspect()); |
|---|
| 234 | assertEqual(30, slider.getRange(1).end-slider.getRange(1).start); |
|---|
| 235 | }}, |
|---|
| 236 | |
|---|
| 237 | testMultipleHandlesSpans: function() { with(this) { |
|---|
| 238 | var slider = new Control.Slider(['handle5-1','handle5-2','handle5-3'], 'track5', |
|---|
| 239 | {spans:['span5-1','span5-2'],range:$R(0,300)}); |
|---|
| 240 | assertInstanceOf(Control.Slider, slider); |
|---|
| 241 | |
|---|
| 242 | slider.setValue(20, 0); |
|---|
| 243 | slider.setValue(100, 1); |
|---|
| 244 | slider.setValue(150, 2); |
|---|
| 245 | |
|---|
| 246 | assertEqual("20px", $('span5-1').style.left); |
|---|
| 247 | assertEqual("78px", $('span5-1').style.width); |
|---|
| 248 | assertEqual("98px", $('span5-2').style.left); |
|---|
| 249 | assertEqual("49px", $('span5-2').style.width); |
|---|
| 250 | |
|---|
| 251 | slider.setValue(30, 0); |
|---|
| 252 | slider.setValue(110, 1); |
|---|
| 253 | slider.setValue(90, 2); |
|---|
| 254 | |
|---|
| 255 | assertEqual("29px", $('span5-1').style.left); |
|---|
| 256 | assertEqual("59px", $('span5-1').style.width); |
|---|
| 257 | assertEqual("88px", $('span5-2').style.left); |
|---|
| 258 | assertEqual("20px", $('span5-2').style.width); |
|---|
| 259 | |
|---|
| 260 | slider.dispose(); |
|---|
| 261 | }}, |
|---|
| 262 | |
|---|
| 263 | testMultipleHandlesSpansStartEnd: function() { with(this) { |
|---|
| 264 | var slider = new Control.Slider(['handle7-1','handle7-2','handle7-3'], 'track7', |
|---|
| 265 | { spans:['span7-1','span7-2'], |
|---|
| 266 | startSpan:'span7-start', |
|---|
| 267 | endSpan:'span7-end', |
|---|
| 268 | range:$R(0,200) }); |
|---|
| 269 | assertInstanceOf(Control.Slider, slider); |
|---|
| 270 | |
|---|
| 271 | slider.setValue(20, 0); |
|---|
| 272 | slider.setValue(100, 1); |
|---|
| 273 | slider.setValue(150, 2); |
|---|
| 274 | assertEqual("0px", $('span7-start').style.left); |
|---|
| 275 | assertEqual("19px", $('span7-start').style.width); |
|---|
| 276 | assertEqual("145px", $('span7-end').style.left); |
|---|
| 277 | assertEqual("48px", $('span7-end').style.width); |
|---|
| 278 | |
|---|
| 279 | slider.dispose(); |
|---|
| 280 | }}, |
|---|
| 281 | |
|---|
| 282 | testSingleHandleSpansStartEnd: function() { with(this) { |
|---|
| 283 | var slider = new Control.Slider('handle7-1', 'track7', |
|---|
| 284 | { spans:['span7-1','span7-2'], |
|---|
| 285 | startSpan:'span7-start', |
|---|
| 286 | endSpan:'span7-end', |
|---|
| 287 | range:$R(0,200) }); |
|---|
| 288 | assertInstanceOf(Control.Slider, slider); |
|---|
| 289 | |
|---|
| 290 | slider.setValue(20, 0); |
|---|
| 291 | assertEqual("0px", $('span7-start').style.left); |
|---|
| 292 | assertEqual("19px", $('span7-start').style.width); |
|---|
| 293 | assertEqual("19px", $('span7-end').style.left); |
|---|
| 294 | assertEqual("174px", $('span7-end').style.width); |
|---|
| 295 | |
|---|
| 296 | slider.dispose(); |
|---|
| 297 | }}, |
|---|
| 298 | |
|---|
| 299 | testMultipleHandlesStyles: function() { with(this) { |
|---|
| 300 | var slider = new Control.Slider(['handle7-1','handle7-2','handle7-3'], 'track7', |
|---|
| 301 | { spans:['span7-1','span7-2'], |
|---|
| 302 | startSpan:'span7-start', |
|---|
| 303 | endSpan:'span7-end', |
|---|
| 304 | range:$R(0,200) }); |
|---|
| 305 | assertInstanceOf(Control.Slider, slider); |
|---|
| 306 | assert(Element.hasClassName('handle7-1','selected')); |
|---|
| 307 | assert(!Element.hasClassName('handle7-2','selected')); |
|---|
| 308 | assert(!Element.hasClassName('handle7-3','selected')); |
|---|
| 309 | |
|---|
| 310 | slider.setValue(20, 0); |
|---|
| 311 | assert(Element.hasClassName('handle7-1','selected')); |
|---|
| 312 | assert(!Element.hasClassName('handle7-2','selected')); |
|---|
| 313 | assert(!Element.hasClassName('handle7-3','selected')); |
|---|
| 314 | |
|---|
| 315 | slider.setValue(100, 1); |
|---|
| 316 | assert(!Element.hasClassName('handle7-1','selected')); |
|---|
| 317 | assert(Element.hasClassName('handle7-2','selected')); |
|---|
| 318 | assert(!Element.hasClassName('handle7-3','selected')); |
|---|
| 319 | |
|---|
| 320 | slider.setValue(150, 2); |
|---|
| 321 | assert(!Element.hasClassName('handle7-1','selected')); |
|---|
| 322 | assert(!Element.hasClassName('handle7-2','selected')); |
|---|
| 323 | assert(Element.hasClassName('handle7-3','selected')); |
|---|
| 324 | |
|---|
| 325 | slider.dispose(); |
|---|
| 326 | }}, |
|---|
| 327 | |
|---|
| 328 | testMultipleHandlesSpansRestricted: function() { with(this) { |
|---|
| 329 | var slider = new Control.Slider(['handle5-1','handle5-2','handle5-3'], 'track5', |
|---|
| 330 | {restricted:true,spans:['span5-1','span5-2'],range:$R(0,300)}); |
|---|
| 331 | assertInstanceOf(Control.Slider, slider); |
|---|
| 332 | |
|---|
| 333 | slider.setValue(20, 0); |
|---|
| 334 | slider.setValue(100, 1); |
|---|
| 335 | slider.setValue(150, 2); |
|---|
| 336 | assertEqual(0, slider.values[0]); |
|---|
| 337 | assertEqual(0, slider.values[1]); |
|---|
| 338 | assertEqual(150, slider.values[2]); |
|---|
| 339 | |
|---|
| 340 | slider.setValue(150, 2); |
|---|
| 341 | slider.setValue(100, 1); |
|---|
| 342 | slider.setValue(20, 0); |
|---|
| 343 | assertEqual(20, slider.values[0]); |
|---|
| 344 | assertEqual(100, slider.values[1]); |
|---|
| 345 | assertEqual(150, slider.values[2]); |
|---|
| 346 | assertEqual("20px", $('span5-1').style.left); |
|---|
| 347 | assertEqual("78px", $('span5-1').style.width); |
|---|
| 348 | assertEqual("98px", $('span5-2').style.left); |
|---|
| 349 | assertEqual("49px", $('span5-2').style.width); |
|---|
| 350 | |
|---|
| 351 | slider.setValue(30, 0); |
|---|
| 352 | slider.setValue(110, 1); |
|---|
| 353 | slider.setValue(90, 2); |
|---|
| 354 | assertEqual(30, slider.values[0]); |
|---|
| 355 | assertEqual(110, slider.values[1]); |
|---|
| 356 | assertEqual(110, slider.values[2], '???'); |
|---|
| 357 | |
|---|
| 358 | assertEqual("29px", $('span5-1').style.left); |
|---|
| 359 | assertEqual("78px", $('span5-1').style.width); |
|---|
| 360 | assertEqual("107px", $('span5-2').style.left); |
|---|
| 361 | assertEqual("0px", $('span5-2').style.width); |
|---|
| 362 | |
|---|
| 363 | slider.dispose(); |
|---|
| 364 | }}, |
|---|
| 365 | |
|---|
| 366 | testMultipleHandlesSpansVertical: function() { with(this) { |
|---|
| 367 | var slider = new Control.Slider(['handle6-1','handle6-2','handle6-3'], 'track6', {axis:'vertical',spans:['span6-1','span6-2'],range:$R(0,100)}); |
|---|
| 368 | assertInstanceOf(Control.Slider, slider); |
|---|
| 369 | |
|---|
| 370 | slider.setValue(20, 0); |
|---|
| 371 | slider.setValue(80, 1); |
|---|
| 372 | slider.setValue(90, 2); |
|---|
| 373 | |
|---|
| 374 | assertEqual("17px", $('span6-1').style.top); |
|---|
| 375 | assertEqual("52px", $('span6-1').style.height); |
|---|
| 376 | assertEqual("70px", $('span6-2').style.top); |
|---|
| 377 | assertEqual("9px", $('span6-2').style.height); |
|---|
| 378 | |
|---|
| 379 | slider.setValue(30, 0); |
|---|
| 380 | slider.setValue(20, 1); |
|---|
| 381 | slider.setValue(95, 2); |
|---|
| 382 | |
|---|
| 383 | assertEqual("17px", $('span6-1').style.top); |
|---|
| 384 | assertEqual("9px", $('span6-1').style.height); |
|---|
| 385 | assertEqual("26px", $('span6-2').style.top); |
|---|
| 386 | assertEqual("57px", $('span6-2').style.height); |
|---|
| 387 | }}, |
|---|
| 388 | |
|---|
| 389 | testRange: function() { with(this) { |
|---|
| 390 | var slider = new Control.Slider('handle1','track1'); |
|---|
| 391 | assertEqual(0, slider.value); |
|---|
| 392 | slider.setValue(1); |
|---|
| 393 | assertEqual("185px", $('handle1').style.left); |
|---|
| 394 | slider.dispose(); |
|---|
| 395 | |
|---|
| 396 | var slider = new Control.Slider('handle1','track1',{range:$R(10,20)}); |
|---|
| 397 | assertEqual(10, slider.value); |
|---|
| 398 | assertEqual("0px", $('handle1').style.left); |
|---|
| 399 | slider.setValue(15); |
|---|
| 400 | assertEqual("93px", $('handle1').style.left); |
|---|
| 401 | slider.setValue(20); |
|---|
| 402 | assertEqual("185px", $('handle1').style.left); |
|---|
| 403 | slider.dispose(); |
|---|
| 404 | }}, |
|---|
| 405 | |
|---|
| 406 | // test for #3732 |
|---|
| 407 | testRangeValues: function() { with(this) { |
|---|
| 408 | // test for non-zero starting range |
|---|
| 409 | var slider = new Control.Slider('handle1','track1',{ |
|---|
| 410 | range:$R(1,3), values:[1,2,3] |
|---|
| 411 | }); |
|---|
| 412 | assertEqual(1, slider.value); |
|---|
| 413 | assertEqual("0px", $('handle1').style.left); |
|---|
| 414 | slider.setValue(2); |
|---|
| 415 | assertEqual("93px", $('handle1').style.left); |
|---|
| 416 | slider.setValue(3); |
|---|
| 417 | assertEqual("185px", $('handle1').style.left); |
|---|
| 418 | slider.dispose(); |
|---|
| 419 | |
|---|
| 420 | // test zero-starting range |
|---|
| 421 | var slider = new Control.Slider('handle1','track1',{ |
|---|
| 422 | range:$R(0,2), values:[0,1,2] |
|---|
| 423 | }); |
|---|
| 424 | assertEqual(0, slider.value); |
|---|
| 425 | assertEqual("0px", $('handle1').style.left); |
|---|
| 426 | slider.setValue(1); |
|---|
| 427 | assertEqual("93px", $('handle1').style.left); |
|---|
| 428 | slider.setValue(2); |
|---|
| 429 | assertEqual("185px", $('handle1').style.left); |
|---|
| 430 | slider.dispose(); |
|---|
| 431 | }} |
|---|
| 432 | |
|---|
| 433 | }, "testlog"); |
|---|
| 434 | // ]]> |
|---|
| 435 | </script> |
|---|
| 436 | </body> |
|---|
| 437 | </html> |
|---|