Title: [254260] trunk/LayoutTests
Revision
254260
Author
you...@apple.com
Date
2020-01-09 08:22:53 -0800 (Thu, 09 Jan 2020)

Log Message

REGRESSION: [ Mac ] webrtc/video-autoplay.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=205893
<rdar://problem/58391046>

Reviewed by Eric Carlson.

* webrtc/video-autoplay.html:
Speculative fix as I am not able to reproduce locally.
Hypothesis is that removing from DOM the video element is supposed to asynchronously pause the video element.
We should therefore ensure that the video element is paused before calling getUserMedia.

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (254259 => 254260)


--- trunk/LayoutTests/ChangeLog	2020-01-09 15:58:15 UTC (rev 254259)
+++ trunk/LayoutTests/ChangeLog	2020-01-09 16:22:53 UTC (rev 254260)
@@ -1,3 +1,16 @@
+2020-01-09  Youenn Fablet  <you...@apple.com>
+
+        REGRESSION: [ Mac ] webrtc/video-autoplay.html is a flaky failure
+        https://bugs.webkit.org/show_bug.cgi?id=205893
+        <rdar://problem/58391046>
+
+        Reviewed by Eric Carlson.
+
+        * webrtc/video-autoplay.html:
+        Speculative fix as I am not able to reproduce locally.
+        Hypothesis is that removing from DOM the video element is supposed to asynchronously pause the video element.
+        We should therefore ensure that the video element is paused before calling getUserMedia.
+
 2020-01-09  Miguel Gomez  <mago...@igalia.com>
 
         Unreviewed WPE gardening: rebaseline several tests after r254044.

Modified: trunk/LayoutTests/webrtc/video-autoplay.html (254259 => 254260)


--- trunk/LayoutTests/webrtc/video-autoplay.html	2020-01-09 15:58:15 UTC (rev 254259)
+++ trunk/LayoutTests/webrtc/video-autoplay.html	2020-01-09 16:22:53 UTC (rev 254260)
@@ -102,12 +102,17 @@
     let removedVideo2 = video2;
     removedVideo2.remove();
 
+    let cptr = 0;
+    while (++cptr < 20 && !removedVideo2.paused)
+        await new Promise(resolve => setTimeout(resolve, 50));
+    assert_true(removedVideo2.paused, "out of DOM video should get paused");
+
     video4.srcObject = await navigator.mediaDevices.getUserMedia({ video : true });
 
     while (video4.paused)
         await new Promise(resolve => setTimeout(resolve, 50));
 
-    assert_true(removedVideo2.paused, "out of DOM video");
+    assert_true(removedVideo2.paused, "out of DOM video should not restart after getUserMedia call");
 }, "Granting getUserMedia should not start paused media 2");
 
 promise_test(async (test) => {
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to