aboutsummaryrefslogtreecommitdiffstats
path: root/tests/unit/spinner/mousewheel-wheel.html
blob: e512a36ccbe29c1706d6330c0494b779345ed506 (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
72
<!doctype html>
<html lang="en">
<head>
	<meta charset="utf-8">
	<title>jQuery UI Spinner Test Suite</title>

	<script src="../../../external/requirejs/require.js"></script>
	<script src="../../../external/jquery/jquery.js"></script>
	<script src="../../lib/css.js" data-modules="core button spinner theme"></script>
	<script src="../../lib/testIframe.js"></script>
</head>
<body>

<input id="spin" class="foo">

<script>
	function runTest() {
		var values = [],
			element = $( "#spin" ).val( 0 ).spinner( {
				step: 2
			} );

		element.focus();
		setTimeout( step1 );

		function dispatchWheelEvent( elem, deltaY ) {
			elem[ 0 ].dispatchEvent( new WheelEvent( "wheel", {
				deltaY: deltaY
			} ) );
		}

		function step1() {
			dispatchWheelEvent( element );
			values.push( element.val() );

			dispatchWheelEvent( element, -1 );
			values.push( element.val() );

			dispatchWheelEvent( element, 0.2 );
			values.push( element.val() );

			dispatchWheelEvent( element, 15 );
			values.push( element.val() );

			element.blur();
			setTimeout( step2 );
		}

		function step2() {
			dispatchWheelEvent( element, -1 );
			values.push( element.val() );

			startIframeTest( values );
		}
	}

	requirejs.config( {
		paths: {
			"jquery-mousewheel": "../../../external/jquery-mousewheel/jquery.mousewheel",
			"ui": "../../../ui"
		},
	} );

	require( [
		"jquery-mousewheel",
		"ui/widgets/spinner"
	], function() {
		runTest();
	} );
</script>
</body>
</html>