Title: [258572] trunk/LayoutTests
Revision
258572
Author
grao...@webkit.org
Date
2020-03-17 12:39:47 -0700 (Tue, 17 Mar 2020)

Log Message

http/wpt/css/css-animations/start-animation-001.html is flaky failing
https://bugs.webkit.org/show_bug.cgi?id=207337
<rdar://problem/59226371>

Reviewed by Dean Jackson.

This test was written in a flaky way for two reasons:

1. it was using a timer to assume state in the animation engine
2. it was using an accelerated animation that wasn't absolutely required to as an indicator of what a non-steps based version
   of the tested animation would look like, but accelerated animations are notoriously hard to test for rendering purposes

We update the test to use the secondary animation as a timer so that we can test the state of animations at 200ms precisely,
and we get rid of the accelerated animation such that only the tested animation's rendering is tested.

* http/wpt/css/css-animations/start-animation-001.html:
* platform/mac/TestExpectations:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (258571 => 258572)


--- trunk/LayoutTests/ChangeLog	2020-03-17 19:32:08 UTC (rev 258571)
+++ trunk/LayoutTests/ChangeLog	2020-03-17 19:39:47 UTC (rev 258572)
@@ -1,5 +1,25 @@
 2020-03-17  Antoine Quint  <grao...@apple.com>
 
+        http/wpt/css/css-animations/start-animation-001.html is flaky failing
+        https://bugs.webkit.org/show_bug.cgi?id=207337
+        <rdar://problem/59226371>
+
+        Reviewed by Dean Jackson.
+
+        This test was written in a flaky way for two reasons:
+        
+        1. it was using a timer to assume state in the animation engine
+        2. it was using an accelerated animation that wasn't absolutely required to as an indicator of what a non-steps based version
+           of the tested animation would look like, but accelerated animations are notoriously hard to test for rendering purposes
+
+        We update the test to use the secondary animation as a timer so that we can test the state of animations at 200ms precisely,
+        and we get rid of the accelerated animation such that only the tested animation's rendering is tested.
+
+        * http/wpt/css/css-animations/start-animation-001.html:
+        * platform/mac/TestExpectations:
+
+2020-03-17  Antoine Quint  <grao...@apple.com>
+
         REGRESSION (r258411): imported/w3c/web-platform-tests/dom/events/Event-dispatch-redispatch.html is failing consistently
         https://bugs.webkit.org/show_bug.cgi?id=209175
         <rdar://problem/60513114>

Modified: trunk/LayoutTests/http/wpt/css/css-animations/start-animation-001.html (258571 => 258572)


--- trunk/LayoutTests/http/wpt/css/css-animations/start-animation-001.html	2020-03-17 19:32:08 UTC (rev 258571)
+++ trunk/LayoutTests/http/wpt/css/css-animations/start-animation-001.html	2020-03-17 19:39:47 UTC (rev 258572)
@@ -16,10 +16,6 @@
         position: absolute;
       }
       /* Avoid animation-fill-mode, to make sure that the move is done by the animation code. */
-      #squareLinear {
-        top: 0px;
-        animation: moveByTransform 10s linear;
-      }
       #squareSteps {
         top: 150px;
         animation: moveByTransform 10s steps(1000);
@@ -26,7 +22,7 @@
       }
       #squareNonAccelerated  {
         top: 300px;
-        animation: moveByLeft 10s steps(100);
+        animation: moveByLeft 200ms steps(10) forwards;
       }
       @keyframes moveByTransform
       {
@@ -40,7 +36,7 @@
           left: 0px;
         }
         100% {
-          left: 5000px;
+          left: 90px;
         }
       }
       #coveringRect {
@@ -53,21 +49,20 @@
       }
     </style>
     <script>
-      function runTest() {
-        if (!window.testRunner)
-          return;
-        // We wait a bit after the squares are moved behind the blue rectangle. For discontinuous
-        // transforms we have 5000px / 100 steps = 5px/step. Hence this happens after 20 steps i.e.
-        // 20/100*10s = 200ms.
-        testRunner.waitUntilDone();
-        setTimeout(() => { testRunner.notifyDone(); }, 300);
-      }
+      window.addEventListener("DOMContentLoaded", () => {
+          if (!window.testRunner)
+            return;
+          // We wait a bit after the squares are moved behind the blue rectangle. For discontinuous
+          // transforms we have 5000px / 100 steps = 5px/step. Hence this happens after 20 steps i.e.
+          // 20/100*10s = 200ms.
+          testRunner.waitUntilDone();
+          document.getElementById("squareNonAccelerated").addEventListener("animationend", () => testRunner.notifyDone());
+      });
     </script>
   </head>
-  <body _onload_="runTest()">
+  <body>
     <p>This test passes if green squares are moved behind the blue rectangle.</p>
     <div id="container">
-      <div id="squareLinear"><tt>transform</tt> (linear)</div>
       <div id="squareSteps"><tt>transform</tt> (steps)</div>
       <div id="squareNonAccelerated"><tt>left</tt> (steps)</div>
       <div id="coveringRect"></div>

Modified: trunk/LayoutTests/platform/mac/TestExpectations (258571 => 258572)


--- trunk/LayoutTests/platform/mac/TestExpectations	2020-03-17 19:32:08 UTC (rev 258571)
+++ trunk/LayoutTests/platform/mac/TestExpectations	2020-03-17 19:39:47 UTC (rev 258572)
@@ -1981,8 +1981,6 @@
 
 webkit.org/b/194162 storage/websql/read-transactions-running-concurrently.html [ Pass Failure ]
 
-webkit.org/b/207337 http/wpt/css/css-animations/start-animation-001.html [ Pass ImageOnlyFailure ]
-
 webkit.org/b/207710 svg/custom/animate-initial-pause-unpause.html [ Pass Failure ]
 
 webkit.org/b/207046 imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/seeking/seek-to-currentTime.html [ Pass Failure ]
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to