Title: [222923] trunk/LayoutTests
Revision
222923
Author
[email protected]
Date
2017-10-05 11:51:46 -0700 (Thu, 05 Oct 2017)

Log Message

Layout Test media/modern-media-controls/scrubber-support/scrubber-support-click.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=177930

Patch by Antoine Quint <[email protected]> on 2017-10-05
Reviewed by Dean Jackson.

In cases where this test failed, it actually worked as expected but the "timeupdate" event would be fired
twice, most likely because it was registered twice. We now use an asynchronous expectation to run the test
which should only register the event listener once and make the test more reliable.

* media/modern-media-controls/scrubber-support/scrubber-support-click-expected.txt:
* media/modern-media-controls/scrubber-support/scrubber-support-click.html:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (222922 => 222923)


--- trunk/LayoutTests/ChangeLog	2017-10-05 18:48:36 UTC (rev 222922)
+++ trunk/LayoutTests/ChangeLog	2017-10-05 18:51:46 UTC (rev 222923)
@@ -1,3 +1,17 @@
+2017-10-05  Antoine Quint  <[email protected]>
+
+        Layout Test media/modern-media-controls/scrubber-support/scrubber-support-click.html is flaky
+        https://bugs.webkit.org/show_bug.cgi?id=177930
+
+        Reviewed by Dean Jackson.
+
+        In cases where this test failed, it actually worked as expected but the "timeupdate" event would be fired
+        twice, most likely because it was registered twice. We now use an asynchronous expectation to run the test
+        which should only register the event listener once and make the test more reliable.
+
+        * media/modern-media-controls/scrubber-support/scrubber-support-click-expected.txt:
+        * media/modern-media-controls/scrubber-support/scrubber-support-click.html:
+
 2017-10-05  Andy Estes  <[email protected]>
 
         [Payment Request] Add a payment method that supports Apple Pay

Modified: trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-click-expected.txt (222922 => 222923)


--- trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-click-expected.txt	2017-10-05 18:48:36 UTC (rev 222922)
+++ trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-click-expected.txt	2017-10-05 18:51:46 UTC (rev 222923)
@@ -3,6 +3,7 @@
 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
 
 
+PASS scrubber.getBoundingClientRect().width became different from 0
 PASS media.currentTime is within 0.2 of 3.1872
 PASS successfullyParsed is true
 

Modified: trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-click.html (222922 => 222923)


--- trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-click.html	2017-10-05 18:48:36 UTC (rev 222922)
+++ trunk/LayoutTests/media/modern-media-controls/scrubber-support/scrubber-support-click.html	2017-10-05 18:51:46 UTC (rev 222923)
@@ -24,29 +24,22 @@
 const container = document.querySelector("div#host");
 const media = document.querySelector("video");
 const mediaController = createControls(container, media, null);
+const scrubber = mediaController.controls.timeControl.scrubber.children[1].element;
 
 mediaController.controls.showsStartButton = false;
 
-scheduler.frameDidFire = function() {
-    if (media.paused)
-        return;
-
-    const scrubber = mediaController.controls.timeControl.scrubber.children[1].element;
-    if (scrubber.getBoundingClientRect().width === 0)
-        return;
-
+media.addEventListener("play", () => {
     media.pause();
-
-    media.addEventListener("timeupdate", () => {
-        shouldBeCloseTo("media.currentTime", 3.1872, 0.2);
-        container.remove();
-        media.remove();
-        finishJSTest();
+    shouldBecomeDifferent("scrubber.getBoundingClientRect().width", "0", () => {
+        media.addEventListener("timeupdate", () => {
+            shouldBeCloseTo("media.currentTime", 3.1872, 0.2);
+            container.remove();
+            media.remove();
+            finishJSTest();
+        });
+        pressOnElement(scrubber);
     });
-    
-    scheduler.frameDidFire = null;
-    pressOnElement(scrubber);
-};
+});
 
 </script>
 <script src=""
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to