Changeset 213257 in webkit


Ignore:
Timestamp:
Mar 1, 2017 6:44:58 PM (7 years ago)
Author:
commit-queue@webkit.org
Message:

[mac-wk1] LayoutTest media/modern-media-controls/seek-backward-support/seek-backward-support.html is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=165386
<rdar://problem/30793480>

Patch by Antoine Quint <Antoine Quint> on 2017-03-01
Reviewed by Jon Lee.

We rewrite the test to use asynchronous assertions and key off the various steps needed to enter fullscreen
and start pressing the skip back button. We also no longer expect a specific currentTime to be reached but
only check that pressing the skip back button eventually gets us far enough in the past.

  • media/modern-media-controls/seek-backward-support/seek-backward-support-expected.txt:
  • media/modern-media-controls/seek-backward-support/seek-backward-support.html:
Location:
trunk/LayoutTests
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r213256 r213257  
     12017-03-01  Antoine Quint  <graouts@apple.com>
     2
     3        [mac-wk1] LayoutTest media/modern-media-controls/seek-backward-support/seek-backward-support.html is a flaky timeout
     4        https://bugs.webkit.org/show_bug.cgi?id=165386
     5        <rdar://problem/30793480>
     6
     7        Reviewed by Jon Lee.
     8
     9        We rewrite the test to use asynchronous assertions and key off the various steps needed to enter fullscreen
     10        and start pressing the skip back button. We also no longer expect a specific currentTime to be reached but
     11        only check that pressing the skip back button eventually gets us far enough in the past.
     12
     13        * media/modern-media-controls/seek-backward-support/seek-backward-support-expected.txt:
     14        * media/modern-media-controls/seek-backward-support/seek-backward-support.html:
     15
    1162017-03-01  Antoine Quint  <graouts@apple.com>
    217
  • trunk/LayoutTests/media/modern-media-controls/seek-backward-support/seek-backward-support-expected.txt

    r209271 r213257  
    44
    55
    6 Media entered fullscreen
     6PASS !!window.internals.shadowRoot(media).lastChild.querySelector("button.rewind") became true
     7PASS media.webkitDisplayingFullscreen is true
     8
    79Setting media.currentTime to 5s
    810PASS media.currentTime is 5
    911PASS media.paused is true
    1012
    11 Media was rewinded for 1 second
    12 PASS media.currentTime < 4 is true
     13Starting to press on the skip back button
     14PASS media.currentTime < 4.5 became true
    1315PASS media.paused is true
    1416
  • trunk/LayoutTests/media/modern-media-controls/seek-backward-support/seek-backward-support.html

    r210959 r213257  
    11<!DOCTYPE html>
    22<script src="../../../resources/js-test-pre.js"></script>
     3<script src="../resources/media-controls-utils.js" type="text/javascript"></script>
    34<body>
    45<video src="../../content/test.mp4" style="width: 320px; height: 240px;" controls></video>
     
    1213const media = document.querySelector("video");
    1314const button = document.body.appendChild(document.createElement("button"));
    14 let shadowRoot = window.internals.shadowRoot(media);
    1515
    16 media.addEventListener("webkitfullscreenchange", function() {
    17     if (media.webkitDisplayingFullscreen) {
    18         window.requestAnimationFrame(() => {
    19             debug("Media entered fullscreen");
    20             debug("Setting media.currentTime to 5s");
    21             media.currentTime = 5;
    22             shouldBe("media.currentTime", "5");
    23             shouldBeTrue("media.paused");
    24 
    25             const forwardButtonElement = shadowRoot.lastChild.querySelector("button.rewind");
    26             forwardButtonElement.dispatchEvent(new MouseEvent("mousedown"));
    27 
    28             setTimeout(() => {
    29                 debug("");
    30                 debug("Media was rewinded for 1 second");
    31                 forwardButtonElement.dispatchEvent(new MouseEvent("mouseup"));
    32 
    33                 shouldBeTrue("media.currentTime < 4");
    34                 shouldBeTrue("media.paused");
    35 
    36                 debug("");
    37                 media.remove();
    38                 button.remove();
    39                 finishJSTest();
    40             }, 1000);
    41         });
    42     }
    43 });
     16button.addEventListener("click", () => media.webkitEnterFullscreen());
    4417
    4518media.addEventListener("loadedmetadata", () => {
    46     if (!("eventSender" in window)) {
    47         debug("This test is designed to run in DRT");
    48         return;
    49     }
     19    pressOnElement(button);
     20    shouldBecomeEqual('!!window.internals.shadowRoot(media).lastChild.querySelector("button.rewind")', "true", () => {
     21        shouldBeTrue("media.webkitDisplayingFullscreen");
     22        debug("");
     23        debug("Setting media.currentTime to 5s");
     24        media.currentTime = 5;
     25        shouldBe("media.currentTime", "5");
     26        shouldBeTrue("media.paused");
    5027
    51     // Click a button so we may enter fullscreen.
    52     button.addEventListener("click", event => {
    53         try {
    54             media.webkitEnterFullscreen();
    55         } catch(e) {
    56             debug("Toggling fullscreen failed");
     28        debug("");
     29        debug("Starting to press on the skip back button");
     30        const forwardButtonElement = window.internals.shadowRoot(media).lastChild.querySelector("button.rewind");
     31        forwardButtonElement.dispatchEvent(new MouseEvent("mousedown"));
     32
     33        shouldBecomeEqual("media.currentTime < 4.5", "true", () => {
     34            forwardButtonElement.dispatchEvent(new MouseEvent("mouseup"));
     35            shouldBeTrue("media.paused");
     36            debug("");
     37            media.remove();
     38            button.remove();
    5739            finishJSTest();
    58         }
     40        });
    5941    });
    60 
    61     eventSender.mouseMoveTo(button.offsetLeft + 1, button.offsetTop + 1);
    62     eventSender.mouseDown();
    63     eventSender.mouseUp();
    6442});
    6543
Note: See TracChangeset for help on using the changeset viewer.