| <html> |
| <head> |
| <title>Test removal of animation shorthand property</title> |
| <style type="text/css" media="screen"> |
| .box { |
| height: 10px; |
| width: 10px; |
| background-color: blue; |
| } |
| |
| @keyframes anim1 { } |
| </style> |
| <script src="../resources/testharness.js"></script> |
| <script src="../resources/testharnessreport.js"></script> |
| <script type="text/javascript" charset="utf-8"> |
| var asyncHandle = async_test("Test removal of animation shorthand property"); |
| const kProperties = [ |
| "animationName", |
| "animationDuration", |
| "animationTimingFunction", |
| "animationDelay", |
| "animationIterationCount", |
| "animationDirection", |
| "animationFillMode" |
| ]; |
| const kElements = [ |
| { id: "a", |
| values: [ ] |
| }, |
| { id: "b", |
| values: [ "none", "0s", "ease", "0s", "1", "normal", "none" ] |
| }, |
| { id: "c", |
| values: [ "anim1", "10s" ] |
| }, |
| { id: "d", |
| values: [ "anim1", "10s", "linear" ] |
| }, |
| { id: "e", |
| values: [ "anim1", "10s", "linear", "5s" ] |
| }, |
| { id: "f", |
| values: [ "anim1", "10s", "linear", "5s", "3" ] |
| }, |
| { id: "g", |
| values: [ "anim1", "10s", "linear", "5s", "infinite", "alternate" ] |
| }, |
| { id: "h", |
| values: [ "anim1", "10s", "linear", "5s", "infinite", "alternate", "forwards" ] |
| } |
| ]; |
| const kExpectedResults = [ "none", "0s", "ease", "0s", "1", "normal", "none" ]; |
| |
| function start() { |
| kElements.forEach(function(curEl) { |
| var el = document.getElementById(curEl.id); |
| for (var i=0; i < curEl.values.length; i++) { |
| el.style[kProperties[i]] = curEl.values[i]; |
| } |
| }); |
| asyncHandle.step_timeout(asyncHandle.step_func(remove), 0); |
| } |
| |
| function remove() { |
| kElements.forEach(function(curEl) { |
| var el = document.getElementById(curEl.id); |
| el.style.removeProperty("animation"); |
| }); |
| asyncHandle.step_timeout(asyncHandle.step_func_done(test), 0); |
| } |
| |
| function test() { |
| var resultsString = ""; |
| kElements.forEach(function(curEl) { |
| var el = document.getElementById(curEl.id); |
| var elStyle = window.getComputedStyle(el); |
| |
| for (var i=0; i < kProperties.length; i++) { |
| var computedValue = elStyle[kProperties[i]]; |
| var expectedValue = kExpectedResults[i]; |
| assert_equals(computedValue, expectedValue, "Testing " + kProperties[i] + " on " + curEl.id + " expected " + expectedValue); |
| } |
| }); |
| } |
| |
| window.addEventListener('load', asyncHandle.step_func(start), false); |
| </script> |
| </head> |
| <body> |
| <div id="a" class="box"></div> |
| <div id="b" class="box"></div> |
| <div id="c" class="box"></div> |
| <div id="d" class="box"></div> |
| <div id="e" class="box"></div> |
| <div id="f" class="box"></div> |
| <div id="g" class="box"></div> |
| <div id="h" class="box"></div> |
| </div> |
| </body> |
| </html> |