Skip to content

Commit 8b885b3

Browse files
committed
Slider unit tests: slider event change
1 parent 5c5f9ad commit 8b885b3

File tree

1 file changed

+56
-1
lines changed

1 file changed

+56
-1
lines changed

tests/unit/slider/slider_events.js

Lines changed: 56 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
* slider_events.js
33
*/
44
(function($) {
5+
6+
var el;
57

68
module( "slider: events" );
79

@@ -13,8 +15,61 @@ test( "slide", function() {
1315
ok( false, "missing test - untested code is broken code." );
1416
});
1517

18+
//Specs from http://wiki.jqueryui.com/Slider#specs
19+
//"change callback: triggers when the slider has stopped moving and has a new
20+
// value (even if same as previous value), via mouse(mouseup) or keyboard(keyup)
21+
// or value method/option"
1622
test( "change", function() {
17-
ok( false, "missing test - untested code is broken code." );
23+
expect(4);
24+
25+
var handle;
26+
// Test mouseup at end of handle slide (mouse)
27+
el = $( "<div></div>" )
28+
.appendTo( "body" )
29+
.slider({
30+
change: function(event, ui) {
31+
ok( true, "change triggered by mouseup at end of handle slide (mouse)" );
32+
}
33+
});
34+
35+
el.find( ".ui-slider-handle" ).eq( 0 )
36+
.simulate( "drag", { dx: 10, dy: 10 } );
37+
38+
reset();
39+
// Test keyup at end of handle slide (keyboard)
40+
el = $( "<div></div>" )
41+
.appendTo( "body" )
42+
.slider({
43+
change: function(event, ui) {
44+
ok( true, "change triggered by keyup at end of handle slide (keyboard)" );
45+
}
46+
});
47+
48+
el.find( ".ui-slider-handle" ).eq( 0 )
49+
.simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } )
50+
.simulate( "keypress", { keyCode: $.ui.keyCode.LEFT } )
51+
.simulate( "keyup", { charCode: $.ui.keyCode.LEFT } );
52+
53+
reset();
54+
// Test value method
55+
el = $( "<div></div>" )
56+
.slider({
57+
change: function(event, ui) {
58+
ok( true, "change triggered by value method" );
59+
}
60+
})
61+
.slider( "value", 0 );
62+
63+
reset();
64+
// Test value option
65+
el = $( "<div></div>" )
66+
.slider({
67+
change: function(event, ui) {
68+
ok( true, "change triggered by value option" );
69+
}
70+
})
71+
.slider( "option", "value", 0 );
72+
1873
});
1974

2075
test( "stop", function() {

0 commit comments

Comments
 (0)