aboutsummaryrefslogtreecommitdiffstats
path: root/tests/unit/selectable/selectable_events.js
blob: f933d3890ab5c0d56a75bcdebdb1ae9bf972c9af (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
/*
 * selectable_events.js
 */
(function( $ ) {

module("selectable: events");

test( "start", function() {
	expect( 2 );
	var el = $("#selectable1");
	el.selectable({
		start: function() {
			ok( true, "drag fired start callback" );
			equal( this, el[0], "context of callback" );
		}
	});
	el.simulate( "drag", {
		dx: 20,
		dy: 20
	});
});

test( "stop", function() {
	expect( 2 );
	var el = $("#selectable1");
	el.selectable({
		start: function() {
			ok( true, "drag fired stop callback" );
			equal( this, el[0], "context of callback" );
		}
	});
	el.simulate( "drag", {
		dx: 20,
		dy: 20
	});
});

test( "mousedown: initial position of helper", function() {
	expect( 2 );

	var contentToForceScroll, helper,
		element = $("#selectable1").selectable();

	contentToForceScroll = $("<div>").css({
		height: "10000px",
		width: "10000px"
	});

	contentToForceScroll.appendTo("body");
	$( window ).scrollTop( 1 ).scrollLeft( 1 );
	element.simulate( "mousedown", {
		clientX: 10,
		clientY: 10
	});

	helper = $(".ui-selectable-helper");
	equal( helper.css("top"), "11px", "Scroll top should be accounted for." );
	equal( helper.css("left"), "11px", "Scroll left should be accounted for." );

	// Cleanup
	element.simulate("mouseup");
	contentToForceScroll.remove();
	$( window ).scrollTop( 0 ).scrollLeft( 0 );
});

})( jQuery );