Changeset 228017 in webkit


Ignore:
Timestamp:
Feb 2, 2018 10:51:37 AM (6 years ago)
Author:
graouts@webkit.org
Message:

[Modern Media Controls] Turn media/modern-media-controls/volume-* back on
https://bugs.webkit.org/show_bug.cgi?id=182438

Reviewed by Dean Jackson.

Update tests to match the modern-media-controls design and expectations.
One test was reworked as a Slider test since VolumeSlider no longer exists.

  • media/modern-media-controls/slider/slider-value-expected.txt: Renamed from LayoutTests/media/modern-media-controls/volume-slider/volume-slider-value-expected.txt.
  • media/modern-media-controls/slider/slider-value.html: Renamed from LayoutTests/media/modern-media-controls/volume-slider/volume-slider-value.html.
  • media/modern-media-controls/volume-down-support/volume-down-support-expected.txt:
  • media/modern-media-controls/volume-down-support/volume-down-support.html:
  • media/modern-media-controls/volume-slider/volume-slider-expected.txt: Removed.
  • media/modern-media-controls/volume-slider/volume-slider-value-expected.txt: Removed.
  • media/modern-media-controls/volume-slider/volume-slider.html: Removed.
  • media/modern-media-controls/volume-support/volume-support-click-expected.txt:
  • media/modern-media-controls/volume-support/volume-support-click.html:
  • media/modern-media-controls/volume-support/volume-support-drag-expected.txt:
  • media/modern-media-controls/volume-support/volume-support-drag.html:
  • media/modern-media-controls/volume-up-support/volume-up-support-expected.txt:
  • media/modern-media-controls/volume-up-support/volume-up-support.html:
  • platform/ios/TestExpectations:
  • platform/mac/TestExpectations:
Location:
trunk/LayoutTests
Files:
1 added
1 deleted
11 edited
1 copied

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r228010 r228017  
     12018-02-02  Antoine Quint  <graouts@apple.com>
     2
     3        [Modern Media Controls] Turn media/modern-media-controls/volume-* back on
     4        https://bugs.webkit.org/show_bug.cgi?id=182438
     5
     6        Reviewed by Dean Jackson.
     7
     8        Update tests to match the modern-media-controls design and expectations.
     9        One test was reworked as a Slider test since VolumeSlider no longer exists.
     10
     11        * media/modern-media-controls/slider/slider-value-expected.txt: Renamed from LayoutTests/media/modern-media-controls/volume-slider/volume-slider-value-expected.txt.
     12        * media/modern-media-controls/slider/slider-value.html: Renamed from LayoutTests/media/modern-media-controls/volume-slider/volume-slider-value.html.
     13        * media/modern-media-controls/volume-down-support/volume-down-support-expected.txt:
     14        * media/modern-media-controls/volume-down-support/volume-down-support.html:
     15        * media/modern-media-controls/volume-slider/volume-slider-expected.txt: Removed.
     16        * media/modern-media-controls/volume-slider/volume-slider-value-expected.txt: Removed.
     17        * media/modern-media-controls/volume-slider/volume-slider.html: Removed.
     18        * media/modern-media-controls/volume-support/volume-support-click-expected.txt:
     19        * media/modern-media-controls/volume-support/volume-support-click.html:
     20        * media/modern-media-controls/volume-support/volume-support-drag-expected.txt:
     21        * media/modern-media-controls/volume-support/volume-support-drag.html:
     22        * media/modern-media-controls/volume-up-support/volume-up-support-expected.txt:
     23        * media/modern-media-controls/volume-up-support/volume-up-support.html:
     24        * platform/ios/TestExpectations:
     25        * platform/mac/TestExpectations:
     26
    1272018-02-02  Antoine Quint  <graouts@apple.com>
    228
  • trunk/LayoutTests/media/modern-media-controls/slider/slider-value.html

    r228015 r228017  
    11<script src="../../../resources/js-test-pre.js"></script>
    22<script src="../resources/media-controls-loader.js" type="text/javascript"></script>
     3<style type="text/css" media="screen">
     4    .slider { position: absolute; }
     5</style>
    36<body>
    47<script type="text/javascript">
    58
    6 description("Testing the <code>VolumeSlider</code> value property.");
     9description("Testing the <code>Slider</code> value property.");
    710
    811window.jsTestIsAsync = true;
    912
    10 const slider = new VolumeSlider;
     13const KNOB_WIDTH = 9;
     14
     15const slider = new Slider;
    1116slider.x = 10;
    1217slider.y = 32;
    13 slider.width = 200;
     18slider.width = 200 + KNOB_WIDTH;
    1419
    1520slider.uiDelegate = {
     
    3742function dragSlider(fromPx, toPx) {
    3843    const bounds = input.getBoundingClientRect();
    39     const minX = bounds.left;
     44    const minX = bounds.left + KNOB_WIDTH / 2;
    4045    const centerY = bounds.top + bounds.height / 2;
    4146
  • trunk/LayoutTests/media/modern-media-controls/volume-down-support/volume-down-support-expected.txt

    r213258 r228017  
    44
    55
    6 PASS !!window.internals.shadowRoot(media).lastChild.querySelector("button.volume-down") became true
     6PASS !!internals.shadowRoot(media).querySelector("button.volume-down") became true
    77PASS media.webkitDisplayingFullscreen is true
    8 PASS media.volume is 1
     8PASS media.volume is 0.5
     9PASS volumeSlider.getBoundingClientRect().left became 196
    910
    1011Pressing on the volume down button
    11 PASS media.volume is within 0.1 of 0
     12PASS media.volume is 0
    1213
    1314PASS successfullyParsed is true
  • trunk/LayoutTests/media/modern-media-controls/volume-down-support/volume-down-support.html

    r217275 r228017  
    33<script src="../resources/media-controls-utils.js" type="text/javascript"></script>
    44<body>
     5<button id="fullscreen" style="position: absolute; left: 0; top: 0;">Enter fullscreen</button>
    56<video src="../../content/test.mp4" style="width: 320px; height: 240px;" controls></video>
    6 <div id="shadow"></div>
    77<script type="text/javascript">
    88
     
    1212
    1313const media = document.querySelector("video");
    14 const button = document.body.appendChild(document.createElement("button"));
     14const button = document.querySelector("#fullscreen");
    1515
    16 button.addEventListener("click", () => media.webkitEnterFullscreen());
     16media.volume = 0.5;
    1717
     18function enterFullscreen()
     19{
     20    if (!("eventSender" in window)) {
     21        debug("This test is designed to run in DRT");
     22        return;
     23    }
     24
     25    // Click a button so we may enter fullscreen.
     26    button.addEventListener("click", event => {
     27        try {
     28            media.webkitEnterFullscreen();
     29        } catch(e) {
     30            debug("Toggling fullscreen failed");
     31            finishJSTest();
     32        }
     33    });
     34
     35    pressOnElement(button);
     36}
     37
     38let volumeDownButton, volumeSlider;
    1839media.addEventListener("loadedmetadata", () => {
    19     pressOnElement(button);
    20     shouldBecomeEqual('!!window.internals.shadowRoot(media).lastChild.querySelector("button.volume-down")', "true", () => {
     40    enterFullscreen();
     41    shouldBecomeEqual('!!internals.shadowRoot(media).querySelector("button.volume-down")', "true", () => {
    2142        shouldBeTrue("media.webkitDisplayingFullscreen");
    22         shouldBe("media.volume", "1");
     43        shouldBe("media.volume", "0.5");
    2344
    24         shouldBeCloseTo("media.volume", "0", () => {
     45        volumeDownButton = internals.shadowRoot(media).querySelector("button.volume-down");
     46        volumeSlider = internals.shadowRoot(media).querySelector(".slider.volume");
     47
     48        shouldBecomeEqual('volumeSlider.getBoundingClientRect().left', "196", () => {
     49            media.addEventListener("volumechange", () => {
     50                shouldBe("media.volume", "0");
     51                debug("");
     52                media.remove();
     53                button.remove();
     54                finishJSTest();
     55            });
     56
    2557            debug("");
    26             media.remove();
    27             button.remove();
    28             finishJSTest();
     58            debug("Pressing on the volume down button");
     59            pressOnElement(volumeDownButton);
    2960        });
    30 
    31         debug("");
    32         debug("Pressing on the volume down button");
    33         pressOnElement(window.internals.shadowRoot(media).lastElementChild.lastElementChild.querySelector("button.volume-down"));
    3461    });
    3562});
  • trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-click-expected.txt

    r212861 r228017  
    55
    66PASS mediaController.controls.volumeSlider.parent.visible is true
    7 PASS media.volume is 0.5
     7PASS media.volume is 0.51
    88PASS successfullyParsed is true
    99
  • trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-click.html

    r212943 r228017  
    5656
    5757media.addEventListener("volumechange", () => {
    58     shouldBe("media.volume", "0.5");
     58    // Because the slider has a 9pt-wide knob and tests are ran at 1x, we can't get 0.5 here, and instead get 0.51 since
     59    // the slider will only increment on whole pixels.
     60    shouldBe("media.volume", "0.51");
    5961    container.remove();
    6062    media.remove();
  • trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-drag-expected.txt

    r213317 r228017  
    1414We initiated a volume slider drag, the media should no longer be muted and the volume set
    1515PASS media.muted became false
    16 PASS media.volume became 0.5
     16PASS media.volume became 0.51
    1717
    1818We finished dragging to set the volume to 1
  • trunk/LayoutTests/media/modern-media-controls/volume-support/volume-support-drag.html

    r213317 r228017  
    5757            debug("We initiated a volume slider drag, the media should no longer be muted and the volume set");
    5858            shouldBecomeEqual("media.muted", "false", () => {
    59                 shouldBecomeEqual("media.volume", "0.5", () => {
     59                // Because the slider has a 9pt-wide knob and tests are ran at 1x, we can't get 0.5 here,
     60                // and instead get 0.51 since the slider will only increment on whole pixels.
     61                shouldBecomeEqual("media.volume", "0.51", () => {
    6062                    for (let i = 1; i <= iterations; ++i)
    6163                        eventSender.mouseMoveTo(bounds.left + bounds.width / 2, dragStartY + i * Math.sign(delta));
     
    7981});
    8082
     83setTimeout(finishJSTest, 3500);
     84
    8185</script>
    8286<script src="../../../resources/js-test-post.js"></script>
  • trunk/LayoutTests/media/modern-media-controls/volume-up-support/volume-up-support-expected.txt

    r218600 r228017  
    44
    55
    6 PASS !!window.internals.shadowRoot(media).querySelector('button.volume-up') became true
     6PASS !!internals.shadowRoot(media).querySelector("button.volume-up") became true
     7PASS media.webkitDisplayingFullscreen is true
    78PASS media.volume is 0.5
     9PASS volumeSlider.getBoundingClientRect().left became 196
    810
    911Pressing on the volume up button
  • trunk/LayoutTests/media/modern-media-controls/volume-up-support/volume-up-support.html

    r218600 r228017  
    33<script src="../resources/media-controls-utils.js" type="text/javascript"></script>
    44<body>
     5<button id="fullscreen" style="position: absolute; left: 0; top: 0;">Enter fullscreen</button>
    56<video src="../../content/test.mp4" style="width: 320px; height: 240px;" controls></video>
    6 <div id="shadow"></div>
    77<script type="text/javascript">
    88
     
    1212
    1313const media = document.querySelector("video");
    14 const button = document.body.appendChild(document.createElement("button"));
     14const button = document.querySelector("#fullscreen");
    1515
    1616media.volume = 0.5;
    1717
    18 media.addEventListener("webkitfullscreenchange", function() {
    19     if (media.webkitDisplayingFullscreen) {
    20         shouldBecomeEqual("!!window.internals.shadowRoot(media).querySelector('button.volume-up')", "true", () => {
    21             shouldBe("media.volume", "0.5");
    22 
    23             media.addEventListener("volumechange", () => {
    24                 shouldBe("media.volume", "1");
    25                 debug("");
    26                 media.remove();
    27                 button.remove();
    28                 finishJSTest();
    29             });
    30 
    31             debug("");
    32             debug("Pressing on the volume up button");
    33             pressOnElement(window.internals.shadowRoot(media).querySelector("button.volume-up"));
    34         });
    35     }
    36 });
    37 
    38 media.addEventListener("loadedmetadata", () => {
     18function enterFullscreen()
     19{
    3920    if (!("eventSender" in window)) {
    4021        debug("This test is designed to run in DRT");
     
    5334
    5435    pressOnElement(button);
     36}
     37
     38let volumeUpButton, volumeSlider;
     39media.addEventListener("loadedmetadata", () => {
     40    enterFullscreen();
     41    shouldBecomeEqual('!!internals.shadowRoot(media).querySelector("button.volume-up")', "true", () => {
     42        shouldBeTrue("media.webkitDisplayingFullscreen");
     43        shouldBe("media.volume", "0.5");
     44
     45        volumeUpButton = internals.shadowRoot(media).querySelector("button.volume-up");
     46        volumeSlider = internals.shadowRoot(media).querySelector(".slider.volume");
     47
     48        shouldBecomeEqual('volumeSlider.getBoundingClientRect().left', "196", () => {
     49            media.addEventListener("volumechange", () => {
     50                shouldBe("media.volume", "1");
     51                debug("");
     52                media.remove();
     53                button.remove();
     54                finishJSTest();
     55            });
     56
     57            debug("");
     58            debug("Pressing on the volume up button");
     59            pressOnElement(volumeUpButton);
     60        });
     61    });
    5562});
    5663
  • trunk/LayoutTests/platform/ios/TestExpectations

    r228009 r228017  
    32913291media/modern-media-controls/scrubber-support/scrubber-support-click.html [ Skip ]
    32923292media/modern-media-controls/scrubber-support/scrubber-support-drag.html [ Skip ]
     3293media/modern-media-controls/slider/slider-value.html [ Skip ]
    32933294
    32943295webkit.org/b/178127 media/modern-media-controls/media-controller/media-controller-video-with-only-audio.html [ Skip ]
  • trunk/LayoutTests/platform/mac/TestExpectations

    r228010 r228017  
    14961496media/modern-media-controls/tracks-support [ Pass ]
    14971497media/modern-media-controls/tracks-button [ Pass ]
     1498media/modern-media-controls/volume-down-support [ Pass ]
     1499media/modern-media-controls/volume-support [ Pass ]
    14981500media/modern-media-controls/volume-up-support [ Pass ]
    14991501
Note: See TracChangeset for help on using the changeset viewer.