-
Notifications
You must be signed in to change notification settings - Fork 38
/
Tween.html
68 lines (59 loc) · 2.05 KB
/
Tween.html
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
<html>
<head>
<script src="OLLoader.js"></script>
<script type="text/javascript">
function test_Tween_constructor(t) {
t.plan(3);
var tween = new OpenLayers.Tween();
t.ok(tween instanceof OpenLayers.Tween,
"new OpenLayers.Tween returns object" );
t.eq(typeof tween.easing, "function",
"constructor sets easing correctly");
t.eq(typeof tween.start, "function", "tween has a start function");
}
function test_Tween_start(t) {
t.plan(5);
var tween = new OpenLayers.Tween();
var start = {foo: 0, bar: 10};
var finish = {foo: 10, bar: 0};
var _start = false;
var _done = false;
var _eachStep = false;
var callbacks = {
start: function() {
_start = true;
},
done: function() {
_done = true;
},
eachStep: function() {
_eachStep = true;
}
}
tween.start(start, finish, 10, {callbacks: callbacks});
t.ok(tween.interval != null, "interval correctly set");
t.delay_call(0.8, function() {
t.eq(_start, true, "start callback called");
t.eq(_done, true, "finish callback called");
t.eq(_eachStep, true, "eachStep callback called");
t.eq(tween.time, 11, "Number of steps reached is correct");
});
}
function test_Tween_stop(t) {
t.plan(2);
var tween = new OpenLayers.Tween();
tween.interval = window.setInterval(function() {}, 10);
tween.playing = true;
tween.stop();
t.eq(tween.interval, null, "tween correctly stopped");
tween.interval = window.setInterval(function() {}, 10);
tween.playing = false;
tween.stop();
t.ok(tween.interval != null, "stop method doesn't do anything if tween isn't running");
}
</script>
</head>
<body>
<div id="map" style="width:500px;height:500px"></div>
</body>
</html>