1 module("Event Binding");
3 $.each(['draginit','dragstart','drag','dragend'],function( i, type ){
5 test('"'+ type +'"',function(){
9 // make sure the event handler gets bound to the element
10 var $elem = $('<div />'),
25 def = $.event.special[ type ].defaults,
28 ok( $elem.bind( type, fn )[0] == elem, '.bind("'+ type +'", fn )' );
29 ok( data = $.data( elem, $.event.special.drag.datakey ), "drag data exists" );
30 ok( $.data( elem, "events" ), "event data exists" );
31 ok( $.data( elem, "events" )[ type ][0], '"'+ type +'" event handler added' );
33 ok( data.which == def.which, '"which" default stored' );
34 ok( data.distance == def.distance, '"distance" default stored' );
35 ok( data.not == def.not, '"not" default stored' );
36 ok( data.handle == def.handle, '"handle" default stored' );
37 ok( data.relative == def.relative, '"relative" default stored' );
38 ok( data.drop == def.drop, '"drop" default stored' );
39 ok( data.click == def.click, '"click" default stored' );
41 ok( $elem.trigger( type )[0] == elem, '.trigger("'+ type +'")' );
42 ok( count == 1, "handler was triggered");
44 ok( $elem.unbind( type )[0] == elem, '.unbind("'+ type +'")' );
45 ok( !$.data( elem, "events" ), "event data removed" );
46 ok( !$.data( elem, $.event.special.drag.datakey ), "drag data removed" );
48 ok( $elem.bind( type, opts, fn )[0] == elem, '.bind("'+ type +'", data, fn )' );
49 ok( data = $.data( elem, $.event.special.drag.datakey ), "drag data exists" );
50 ok( $.data( elem, "events" ), "event data exists" );
51 ok( $.data( elem, "events" )[ type ][0], '"drag'+ type +'" event handler added' );
53 ok( data.which == opts.which, '"which" option stored' );
54 ok( data.distance == opts.distance, '"distance" option stored' );
55 ok( data.not == opts.not, '"not" option stored' );
56 ok( data.handle == opts.handle, '"handle" option stored' );
57 ok( data.relative == opts.relative, '"relative" option stored' );
58 ok( data.drop == opts.drop, '"drop" option stored' );
59 ok( data.click == opts.click, '"click" option stored' );