summaryrefslogtreecommitdiff
path: root/src/main/webapp/jquery-ui-1.9pre/tests/unit/slider/slider_events.js
diff options
context:
space:
mode:
authorLeif Johansson <leifj@sunet.se>2011-11-25 21:18:19 +0100
committerLeif Johansson <leifj@sunet.se>2011-11-25 21:18:19 +0100
commit3909e6d89e01e4cd8777377c63037896bb95aa2f (patch)
tree59679df287c2bee55087fb5afb8d42e7f93a44fb /src/main/webapp/jquery-ui-1.9pre/tests/unit/slider/slider_events.js
parente5f94e9be5017f627c1ccd8c6306c5cc2e200432 (diff)
new jq layout
Diffstat (limited to 'src/main/webapp/jquery-ui-1.9pre/tests/unit/slider/slider_events.js')
-rw-r--r--src/main/webapp/jquery-ui-1.9pre/tests/unit/slider/slider_events.js109
1 files changed, 109 insertions, 0 deletions
diff --git a/src/main/webapp/jquery-ui-1.9pre/tests/unit/slider/slider_events.js b/src/main/webapp/jquery-ui-1.9pre/tests/unit/slider/slider_events.js
new file mode 100644
index 0000000..0b7b250
--- /dev/null
+++ b/src/main/webapp/jquery-ui-1.9pre/tests/unit/slider/slider_events.js
@@ -0,0 +1,109 @@
+/*
+ * slider_events.js
+ */
+(function($) {
+
+module( "slider: events" );
+
+//Specs from http://wiki.jqueryui.com/Slider#specs
+//"change callback: triggers when the slider has stopped moving and has a new
+// value (even if same as previous value), via mouse(mouseup) or keyboard(keyup)
+// or value method/option"
+test( "mouse based interaction", function() {
+ expect(4);
+
+ var el = $( "<div></div>" )
+ .appendTo( "body" )
+ .slider({
+ start: function(event, ui) {
+ equals( event.originalEvent.type, "mousedown", "start triggered by mousedown" );
+ },
+ slide: function(event, ui) {
+ equals( event.originalEvent.type, "mousemove", "slider triggered by mousemove" );
+ },
+ stop: function(event, ui) {
+ equals( event.originalEvent.type, "mouseup", "stop triggered by mouseup" );
+ },
+ change: function(event, ui) {
+ equals( event.originalEvent.type, "mouseup", "change triggered by mouseup" );
+ }
+ });
+
+ el.find( ".ui-slider-handle" ).eq( 0 )
+ .simulate( "drag", { dx: 10, dy: 10 } );
+
+});
+test( "keyboard based interaction", function() {
+ expect(3);
+
+ // Test keyup at end of handle slide (keyboard)
+ var el = $( "<div></div>" )
+ .appendTo( "body" )
+ .slider({
+ start: function(event, ui) {
+ equals( event.originalEvent.type, "keydown", "start triggered by keydown" );
+ },
+ slide: function(event, ui) {
+ ok( false, "Slider never triggered by keys" );
+ },
+ stop: function(event, ui) {
+ equals( event.originalEvent.type, "keyup", "stop triggered by keyup" );
+ },
+ change: function(event, ui) {
+ equals( event.originalEvent.type, "keyup", "change triggered by keyup" );
+ }
+ });
+
+ el.find( ".ui-slider-handle" ).eq( 0 )
+ .simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } )
+ .simulate( "keypress", { keyCode: $.ui.keyCode.LEFT } )
+ .simulate( "keyup", { keyCode: $.ui.keyCode.LEFT } );
+
+});
+test( "programmatic event triggers", function() {
+ expect(6);
+
+ // Test value method
+ var el = $( "<div></div>" )
+ .slider({
+ change: function(event, ui) {
+ ok( true, "change triggered by value method" );
+ }
+ })
+ .slider( "value", 0 );
+
+ QUnit.reset();
+ // Test values method
+ el = $( "<div></div>" )
+ .slider({
+ values: [ 10, 20 ],
+ change: function(event, ui) {
+ ok( true, "change triggered by values method" );
+ }
+ })
+ .slider( "values", [80, 90] );
+
+ QUnit.reset();
+ // Test value option
+ el = $( "<div></div>" )
+ .slider({
+ change: function(event, ui) {
+ ok( true, "change triggered by value option" );
+ }
+ })
+ .slider( "option", "value", 0 );
+
+ QUnit.reset();
+ // Test values option
+ el = $( "<div></div>" )
+ .slider({
+ values: [ 10, 20 ],
+ change: function(event, ui) {
+ ok( true, "change triggered by values option" );
+ }
+ })
+ .slider( "option", "values", [80, 90] );
+
+});
+
+}( jQuery ) );