3 module("Event Handlers");
5 // a simple re-usable test harness object
7 init: function( opts ){
8 obj.$drag = $('<div class="drag"/>')
9 .appendTo( document.body )
17 .bind("dragend",{ drop:'.drop' },function( event, dd ){
18 same( dd.drop, obj.dragend, "drop (dragend)" );
20 obj.$drop = $('<div class="drop"/><div class="extra"/>')
21 .appendTo( document.body )
29 .bind("dropinit dropstart drop dropend",function( event, dd ){
30 obj[ event.type ] += 1;
31 return obj.returned[ event.type ];
33 $.extend( obj, { dropinit:0, dropstart:0, drop:0, dropend:0 });
34 $.drop({ mode:'overlap', multi:false });
40 pageX: Math.round( Math.random() * 90 ) + 5,
41 pageY: Math.round( Math.random() * 90 ) + 5
44 pageX: Math.round( Math.random() * 90 ) + start.pageX,
45 pageY: Math.round( Math.random() * 90 ) + start.pageY
47 // simulate a complete mouse drag
49 .fire("mousedown", start )
50 .fire("mousemove", end )
51 .fire("mouseup", end )
61 asyncTest('"dropinit" return false',function(){
65 obj.returned['dropinit'] = false;
67 // simulate a partial drag
70 equals( obj.dropinit, 1, "dropinit");
71 equals( obj.dropstart, 0, "dropstart");
72 equals( obj.drop, 0, "drop");
73 equals( obj.dropend, 0, "dropend");
78 asyncTest('"dropstart" return false',function(){
82 obj.returned['dropstart'] = false;
84 // simulate a partial drag
87 equals( obj.dropinit, 1, "dropinit");
88 equals( obj.dropstart, 1, "dropstart");
89 equals( obj.drop, 0, "drop");
90 equals( obj.dropend, 0, "dropend");
96 asyncTest('"drop" return false',function(){
99 obj.init();// test DROP FALSE
100 obj.returned['drop'] = false;
102 // simulate a partial drag
105 equals( obj.dropinit, 1, "dropinit");
106 equals( obj.dropstart, 1, "dropstart");
107 equals( obj.drop, 1, "drop");
108 equals( obj.dropend, 0, "dropend");
113 asyncTest('"dropinit" return elements',function(){
117 obj.returned['dropinit'] = obj.$drop.eq(1);
118 obj.dragend = [ obj.$drop[1] ];
119 // simulate a partial drag
122 equals( obj.dropinit, 1, "dropinit");
123 equals( obj.dropstart, 1, "dropstart");
124 equals( obj.drop, 1, "drop");
125 equals( obj.dropend, 1, "dropend");