Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(70)

Side by Side Diff: third_party/WebKit/LayoutTests/media/controls-cast-button-narrow.html

Issue 2684973004: Remove unnecessary refreshCastButtonVisibility call (Closed)
Patch Set: mlamouri feedback Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <title>media controls cast button</title> 2 <title>media controls cast button</title>
3 <script src="../resources/testharness.js"></script> 3 <script src="../resources/testharness.js"></script>
4 <script src="../resources/testharnessreport.js"></script> 4 <script src="../resources/testharnessreport.js"></script>
5 <script src="media-file.js"></script> 5 <script src="media-file.js"></script>
6 <script src="media-controls.js"></script> 6 <script src="media-controls.js"></script>
7 <video width="100" height="200" controls></video> 7 <video width="100" height="200" controls></video>
8 <script> 8 <script>
9 async_test(function(t) { 9 async_test(function(t) {
10 var video = document.querySelector("video"); 10 var video = document.querySelector("video");
11 video.src = findMediaFile("video", "content/test"); 11 video.src = findMediaFile("video", "content/test");
12 12
13 video.onloadedmetadata = t.step_func_done(function() { 13 video.onloadedmetadata = t.step_func(function() {
14 // Pretend we have a cast device 14 // Pretend we have a cast device
15 internals.mediaPlayerRemoteRouteAvailabilityChanged(video, true); 15 internals.mediaPlayerRemoteRouteAvailabilityChanged(video, true);
16 16
17 // Video should not have a cast button since the video is too narrow 17 // Video should not have a cast button since the video is too narrow
18 var button = castButton(video); 18 assert_false(isVisible(castButton(video)), "button should not be visible ");
19 assert_equals(button.style.display, "none", "button should not be visibl e");
20 19
21 // It should not have an overlay cast button too. Instead, the button 20 // It should not have an overlay cast button too. Instead, the button
22 // should appear in the overflow menu. Tested somewhere else. 21 // should appear in the overflow menu. Tested somewhere else.
23 button = overlayCastButton(video); 22 assert_false(isVisible(overlayCastButton(video)), "button should not be visible");
24 assert_equals(button.style.display, "none", "button should not be visibl e"); 23
24
25 // Increasing video width should show the cast button.
26 video.width = 500;
27 testRunner.layoutAndPaintAsyncThen(t.step_func(function() {
28 assert_true(isVisible(castButton(video)), "button should be visible" );
29
30 // Decreasing video width should hide the cast button again.
31 video.width = 100;
32 testRunner.layoutAndPaintAsyncThen(t.step_func(function() {
33 assert_false(isVisible(castButton(video)), "button should not be visible");
34
mlamouri (slow - plz ping) 2017/02/14 21:00:17 nit: one empty line too many.
steimel 2017/02/14 22:32:12 Done.
35
36 // If the cast device is lost, we still don't show the cast
37 // button when the video width increases.
38 internals.mediaPlayerRemoteRouteAvailabilityChanged(video, false );
39 video.width = 500;
40 testRunner.layoutAndPaintAsyncThen(t.step_func_done(function() {
41 assert_false(isVisible(castButton(video)), "button should no t be visible");
42 }));
43 }));
44 }));
25 }); 45 });
26 46
27 function castButton(element) { 47 function isVisible(button) {
28 var controlID = "-internal-media-controls-cast-button"; 48 var computedStyle = getComputedStyle(button);
29 var button = mediaControlsElement(internals.shadowRoot(element).firstChi ld, controlID); 49 return computedStyle.display !== "none" &&
30 if (!button) 50 computedStyle.display !== "hidden" &&
31 throw "Failed to find cast button"; 51 computedStyle.visibility === "visible";
32 return button;
33 }
34
35 function overlayCastButton(element) {
36 var controlID = "-internal-media-controls-overlay-cast-button";
37 return mediaControlsElement(internals.shadowRoot(element).firstChild, co ntrolID);
38 return button
39 if (!button)
40 throw "Failed to find cast button";
41 return button;
42 } 52 }
43 }); 53 });
44 </script> 54 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698