OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <script src="../resources/testharness.js"></script> | 2 <script src="../resources/testharness.js"></script> |
3 <script src="../resources/testharnessreport.js"></script> | 3 <script src="../resources/testharnessreport.js"></script> |
4 | 4 |
5 <style> | 5 <style> |
6 .anim { | 6 .anim { |
7 position: absolute; | 7 position: absolute; |
8 left: 10px; | 8 left: 10px; |
9 height: 90px; | 9 height: 90px; |
10 width: 100px; | 10 width: 100px; |
11 background-color: black; | 11 background-color: black; |
12 } | 12 } |
13 </style> | 13 </style> |
14 | 14 |
15 <body> | 15 <body> |
16 <div id='e1' class='anim'></div> | 16 <div id='e1' class='anim'></div> |
17 <div id='e2' class='anim'></div> | 17 <div id='e2' class='anim'></div> |
18 <div id='e3' class='anim'></div> | 18 <div id='e3' class='anim'></div> |
| 19 <div id='e4' class='anim'></div> |
19 </body> | 20 </body> |
20 | 21 |
21 <script> | 22 <script> |
22 var e1 = document.getElementById('e1'); | 23 var e1 = document.getElementById('e1'); |
23 var e2 = document.getElementById('e2'); | 24 var e2 = document.getElementById('e2'); |
24 var e3 = document.getElementById('e3'); | 25 var e3 = document.getElementById('e3'); |
| 26 var e4 = document.getElementById('e4'); |
25 | 27 |
26 var e1Style = getComputedStyle(e1); | 28 var e1Style = getComputedStyle(e1); |
27 var e2Style = getComputedStyle(e2); | 29 var e2Style = getComputedStyle(e2); |
28 var e3Style = getComputedStyle(e3); | 30 var e3Style = getComputedStyle(e3); |
29 | 31 |
30 var durationValue = 1; | 32 var durationValue = 1; |
31 | 33 |
32 test(function() { | 34 test(function() { |
33 var player = e1.animate([ | 35 var player = e1.animate([ |
34 {left: '10px', opacity: '1', offset: 0}, | 36 {left: '10px', opacity: '1', offset: 0}, |
35 {left: '100px', opacity: '0', offset: 1} | 37 {left: '100px', opacity: '0', offset: 1} |
36 ], durationValue).player; | 38 ], durationValue).player; |
37 player.pause(); | 39 player.pause(); |
38 player.currentTime = durationValue / 2; | 40 player.currentTime = durationValue / 2; |
39 assert_equals(e1Style.left, '55px'); | 41 assert_equals(e1Style.left, '55px'); |
40 assert_equals(e1Style.opacity, '0.5'); | 42 assert_equals(e1Style.opacity, '0.5'); |
41 }, 'Calling animate() should start an animation.'); | 43 }, 'Calling animate() should start an animation.'); |
42 | 44 |
43 test(function() { | 45 test(function() { |
44 var player = e2.animate([ | 46 var player = e2.animate([ |
45 {backgroundColor: 'green', offset: 0}, | 47 {backgroundColor: 'green', offset: 0}, |
46 {backgroundColor: 'purple', offset: 1} | 48 {backgroundColor: 'purple', offset: 1} |
47 ], durationValue).player; | 49 ], durationValue).player; |
48 player.pause(); | 50 player.pause(); |
49 player.currentTime = durationValue / 2; | 51 player.currentTime = durationValue / 2; |
50 assert_equals(e2Style.backgroundColor, 'rgb(64, 64, 64)'); | 52 assert_equals(e2Style.backgroundColor, 'rgb(64, 64, 64)'); |
51 }, 'Calling animate() should start an animation. CamelCase property names should
be parsed.'); | 53 }, 'Calling animate() should start an animation. CamelCase property names should
be parsed.'); |
52 | 54 |
53 var keyframesWithInvalid = [ | 55 var keyframesWithInvalid = [ |
54 {offset: 0.1}, | 56 {offset: 0}, |
55 {width: '0px', backgroundColor: 'octarine', offset: 0.2}, | 57 {width: '0px', backgroundColor: 'octarine', offset: 0.2}, |
56 {width: '1000px', foo: 'bar', offset: 1} | 58 {width: '1000px', foo: 'bar', offset: 1} |
57 ]; | 59 ]; |
58 | 60 |
59 test(function() { | 61 test(function() { |
60 var player = e3.animate(keyframesWithInvalid, {duration: durationValue, fill
: 'forwards'}).player; | 62 var player = e3.animate(keyframesWithInvalid, {duration: durationValue, fill
: 'forwards'}).player; |
61 player.pause(); | 63 player.pause(); |
62 player.currentTime = durationValue; | 64 player.currentTime = durationValue; |
63 assert_equals(e3Style.width, '1000px'); | 65 assert_equals(e3Style.width, '1000px'); |
64 assert_equals(e3Style.backgroundColor, 'rgb(0, 0, 0)'); | 66 assert_equals(e3Style.backgroundColor, 'rgb(0, 0, 0)'); |
65 assert_equals(e3Style.foo, undefined); | 67 assert_equals(e3Style.foo, undefined); |
66 }, 'Calling animate() with a pre-constructed keyframes list should start an anim
ation. Invalid style declarations should be ignored.'); | 68 }, 'Calling animate() with a pre-constructed keyframes list should start an anim
ation. Invalid style declarations should be ignored.'); |
67 </script> | 69 </script> |
OLD | NEW |