1 module("Callback Properties");
3 $.each(["init","start","","end"],function( i, type ){
5 test('"drag'+ type +'" callback',function(){
9 // create the markup for the test
10 var $div = $('<div />')
11 .appendTo( document.body ),
13 sx = Math.round( Math.random() * 90 ) + 5,
14 sy = Math.round( Math.random() * 90 ) + 5,
15 // mouse offset position
16 mx = Math.round( Math.random() * 90 ) + 5,
17 my = Math.round( Math.random() * 90 ) + 5,
19 dx = Math.round( Math.random() * 90 ) + 5,
20 dy = Math.round( Math.random() * 90 ) + 5;
23 .drag( type, function( event, dd ){
25 ok( dd.target == $div[0], "target: [drag target]" );
26 ok( dd.drag == $div[0], "drag: [drag target]" );
27 ok( dd.proxy == $div[0], "proxy: [drag target]" );
29 equals( dd.startX, sx + mx, "startX" );
30 equals( dd.startY, sy + my, "startY" );
32 equals( dd.deltaX, i ? dx : 0, "deltaX" );
33 equals( dd.deltaY, i ? dy : 0, "deltaY" );
35 equals( dd.originalX, sx, "originalX" );
36 equals( dd.originalY, sy, "originalY" );
38 equals( dd.offsetX, i ? sx + dx : sx, "offsetX" );
39 equals( dd.offsetY, i ? sy + dy : sy, "offsetY" );
41 ok( dd.drop.constructor == Array && !dd.drop.length, "drop: []" );
42 ok( dd.available.constructor == Array && !dd.available.length, "available: []" );