summaryrefslogtreecommitdiffstats
path: root/ecomp-portal-FE/client/bower_components/jquery.event.drag-new/event.drag/test/properties.js
blob: aef28244c4632ae99202b19d7fdcc56f49ba7ff8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
module("Callback Properties");

$.each(["init","start","","end"],function( i, type ){
	
	test('"drag'+ type +'" callback',function(){
						
		expect( 13 );
		
		// create the markup for the test
		var $div = $('<div />')
			.appendTo( document.body ),
		// starting position
		sx = Math.round( Math.random() * 90 ) + 5,
		sy = Math.round( Math.random() * 90 ) + 5,
		// mouse offset position
		mx = Math.round( Math.random() * 90 ) + 5,
		my = Math.round( Math.random() * 90 ) + 5,
		// distance dragged
		dx = Math.round( Math.random() * 90 ) + 5,
		dy = Math.round( Math.random() * 90 ) + 5;
	
		$div
			.drag( type, function( event, dd ){
				
				ok( dd.target == $div[0], "target: [drag target]" );
				ok( dd.drag == $div[0], "drag: [drag target]" );
				ok( dd.proxy == $div[0], "proxy: [drag target]" );
				
				equals( dd.startX, sx + mx, "startX" );
				equals( dd.startY, sy + my, "startY" );
				
				equals( dd.deltaX, i ? dx : 0, "deltaX" );
				equals( dd.deltaY, i ? dy : 0, "deltaY" );
				
				equals( dd.originalX, sx, "originalX" );
				equals( dd.originalY, sy, "originalY" );
				
				equals( dd.offsetX, i ? sx + dx : sx, "offsetX" );
				equals( dd.offsetY, i ? sy + dy : sy, "offsetY" );
				
				ok( dd.drop.constructor == Array && !dd.drop.length, "drop: []" );
				ok( dd.available.constructor == Array && !dd.available.length, "available: []" );
				
			})
			.css({
				position: 'absolute',
				top: sy,
				left: sx,
				height: 100,
				width: 100
			})
			// simulate a drag
			.fire("mousedown",{ 
				pageX: sx + mx, 
				pageY: sy + my
			})
			.fire("mousemove",{ 
				pageX: sx + mx + dx, 
				pageY: sy + my + dy
			})
			.fire("mouseup",{ 
				pageX: sx + mx + dx, 
				pageY: sy + my + dy 
			})
			.fire("click",{ 
				pageX: sx + mx + dx, 
				pageY: sy + my + dy 
			});
		$div.remove();
	});
});