| Index: third_party/WebKit/LayoutTests/transitions/unprefixed-transform.html
|
| diff --git a/third_party/WebKit/LayoutTests/transitions/unprefixed-transform.html b/third_party/WebKit/LayoutTests/transitions/unprefixed-transform.html
|
| index f7eb93bff9f6c3a49733238aa0875abd2aad2869..b2817f7060c09aa85c95034fca2d736fa426894c 100644
|
| --- a/third_party/WebKit/LayoutTests/transitions/unprefixed-transform.html
|
| +++ b/third_party/WebKit/LayoutTests/transitions/unprefixed-transform.html
|
| @@ -1,36 +1,50 @@
|
| <!DOCTYPE html>
|
| -<div class="target">-webkit-transform 10ms</div><br>
|
| -<div class="target">transform 10ms</div><br>
|
| -<div class="target">transform 10ms, -webkit-transform 10ms</div><br>
|
| -<div class="target">-webkit-transform 10ms, transform 10ms</div><br>
|
| -<div class="target">all 10ms</div><br>
|
| -<div class="target">all 10ms, -webkit-transform 10ms</div><br>
|
| -<div class="target">-webkit-transform 10ms, all 10ms</div>
|
| +<meta charset="utf-8">
|
| +<script src="../resources/testharness.js"></script>
|
| +<script src="../resources/testharnessreport.js"></script>
|
| +<div id="container"></div>
|
| <script>
|
| -if (window.testRunner) {
|
| - testRunner.dumpAsText();
|
| - testRunner.waitUntilDone();
|
| -}
|
| +'use strict';
|
|
|
| -document.addEventListener('transitionend', function(e) {
|
| - var result = document.createElement('div');
|
| - result.textContent = 'fired transitionend with propertyName: ' + e.propertyName;
|
| - e.target.appendChild(result);
|
| - if (window.testRunner) {
|
| - // All events should be fired by next frame.
|
| - requestAnimationFrame(function() {
|
| - testRunner.notifyDone();
|
| +var transitionValues = [
|
| + '-webkit-transform 10ms',
|
| + 'transform 10ms',
|
| + 'transform 10ms, -webkit-transform 10ms',
|
| + '-webkit-transform 10ms, transform 10ms',
|
| + 'all 10ms',
|
| + 'all 10ms, -webkit-transform 10ms',
|
| + '-webkit-transform 10ms, all 10ms'
|
| +];
|
| +
|
| +async_test(t => {
|
| + var remaining = transitionValues.length;
|
| + for (let i = 0; i < transitionValues.length; i++) {
|
| + const element = document.createElement('div');
|
| + container.appendChild(element);
|
| +
|
| + element.addEventListener('transitionend', e => {
|
| + t.step(() => {
|
| + assert_equals(e.target, element);
|
| + assert_equals(e.type, 'transitionend');
|
| + assert_equals(e.propertyName, 'transform');
|
| + assert_greater_than(remaining, 0);
|
| +
|
| + remaining -= 1;
|
| + if (!remaining) {
|
| + // Delay provides opportunity to detect excess events.
|
| + setTimeout(() => {
|
| + t.done();
|
| + }, 50);
|
| + }
|
| + });
|
| });
|
| - }
|
| -});
|
|
|
| -onload = function() {
|
| - var targets = document.querySelectorAll('.target');
|
| - for (var i = 0; i < targets.length; i++) {
|
| - targets[i].offsetTop;
|
| - targets[i].style.transition = targets[i].textContent;
|
| - targets[i].style.webkitTransform = 'rotate(360deg)';
|
| - targets[i].style.transform = 'rotate(360deg)';
|
| + requestAnimationFrame(() => {
|
| + element.offsetTop;
|
| + element.style.transition = transitionValues[i];
|
| + element.style.webkitTransform = 'rotate(360deg)';
|
| + element.style.transform = 'rotate(360deg)';
|
| + });
|
| }
|
| -};
|
| +}, 'Transition on the prefixed and/or unprefixed transform property causes a single transitionend event for the unprefixed transform property.');
|
| </script>
|
|
|