summaryrefslogtreecommitdiffstats
path: root/ecomp-portal-FE/client/bower_components/jquery.event.drag-new/event.drop/test/live.js
blob: 5e30130fff7cb37c4ca97cb8c1e860f7eabfe729 (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
module("Live Delegation");

$.each(["dropinit","dropstart","drop","dropend"],function( i, type ){

	test('"'+ type+'"',function(){
		
		expect( i ? 5 : 1 );
		
		if ( !i ){
			ok( true, 'Not supported for this event type.');
			return;
		}
		
		// set up the delegation
		$('.drop').live( type, function( event ){
			count += 1;
			equals( this, $drop[0], event.type+" target" );
		});
		// local refs
		var count = 0,
		// add a div to test the delegation
		$drop = $('<div class="drop" />')
			.css({
				position: 'absolute',
				top: 0, left: 0,
				height: 100, width: 100
				})
			.appendTo( document.body ),
		// add a dragger
		$drag = $('<div class="drag" />')
			.css({
				position: 'absolute',
				top: 0, left: 0,
				height: 100, width: 100
				})
			.appendTo( document.body )
			.drag(function(){ });
		
		// check triggering of the event handlers
		ok( $drop.trigger( type ), '.trigger("'+ type +'")');
		equals( count, 1, "event was triggered");
				
		// simulate a complete drag
		$drag
			.fire("mousedown",{ pageX:50, pageY:50 })
			.fire("mousemove",{ pageX:51, pageY:51 })
			.fire("mouseup",{ pageX:51, pageY:51 })
			.fire("click",{ pageX:51, pageY:51 });
		
		// check the event handler counts
		equals( count, 2, "event was delegated");
				
		// remove delegation
		$('.drop').die( type );
		$drag.remove();
		$drop.remove();
		
	});

});