| <html><!-- webkit-test-runner [ experimental:WebAnimationsCSSIntegrationEnabled=false ] --> |
| <head> |
| <title>Test removal of animation shorthand property</title> |
| <style type="text/css" media="screen"> |
| .box { |
| height: 10px; |
| width: 10px; |
| background-color: blue; |
| } |
| |
| @-webkit-keyframes anim1 { } |
| </style> |
| <script type="text/javascript" charset="utf-8"> |
| if (window.testRunner) { |
| testRunner.dumpAsText(); |
| testRunner.waitUntilDone(); |
| } |
| |
| const kProperties = [ |
| "webkitAnimationName", |
| "webkitAnimationDuration", |
| "webkitAnimationTimingFunction", |
| "webkitAnimationDelay", |
| "webkitAnimationIterationCount", |
| "webkitAnimationDirection", |
| "webkitAnimationFillMode" |
| ]; |
| 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]; |
| } |
| }); |
| setTimeout(remove, 0); |
| } |
| |
| function remove() { |
| kElements.forEach(function(curEl) { |
| var el = document.getElementById(curEl.id); |
| el.style.removeProperty("-webkit-animation"); |
| }); |
| setTimeout(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]; |
| if (computedValue == expectedValue) |
| resultsString += "Testing " + kProperties[i] + " on " + curEl.id + ": PASS" + "<br>"; |
| else |
| resultsString += "Testing " + kProperties[i] + " on " + curEl.id + " expected <code>" + expectedValue + "</code> got <code>" + computedValue + "</code>: FAIL" + "<br>"; |
| |
| } |
| }); |
| |
| var results = document.getElementById('result'); |
| results.innerHTML = resultsString; |
| if (window.testRunner) |
| testRunner.notifyDone(); |
| } |
| |
| window.addEventListener('load', 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 id="result"> |
| </div> |
| </body> |
| </html> |