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

Unified Diff: third_party/WebKit/LayoutTests/media/controls/closed-captions-on-off.html

Issue 2539023002: Media Controls: Use events to update controls for closed captions. (Closed)
Patch Set: review comments Created 4 years 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/media/controls/closed-captions-on-off.html
diff --git a/third_party/WebKit/LayoutTests/media/controls/closed-captions-on-off.html b/third_party/WebKit/LayoutTests/media/controls/closed-captions-on-off.html
new file mode 100644
index 0000000000000000000000000000000000000000..8558d030a60b66403b5c7f879f33ca413085a435
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/media/controls/closed-captions-on-off.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<title>Tests that tracks can be turned on and off through the track selection menu.</title>
+<script src='../../resources/testharness.js'></script>
+<script src='../../resources/testharnessreport.js'></script>
+<script src='../media-controls.js'></script>
+<script src='../media-file.js'></script>
+<video controls></video>
+<script>
+async_test(t => {
+ var captions = ['First', 'Second', 'Third'];
+ var video = document.querySelector('video');
+
+ video.oncanplaythrough = t.step_func(_ => {
+ var track1 = video.addTextTrack('captions');
+ var track2 = video.addTextTrack('captions');
+
+ for (var i = 0; i < captions.length; ++i) {
+ track1.addCue(new VTTCue(0, 120, captions[i]));
+ track2.addCue(new VTTCue(0, 120, captions[i]));
+ }
+
+ // The controls are updated asynchronously.
+ assert_false(isClosedCaptionsButtonVisible(video));
+
+ setTimeout(t.step_func_done(_ => {
+ assert_true(isClosedCaptionsButtonVisible(video));
+
+ // The captions track should be listed in textTracks, but not yet loaded.
+ assert_equals(video.textTracks.length, 2);
+ assert_equals(video.textTracks[0].mode, 'hidden');
+ assert_equals(video.textTracks[1].mode, 'hidden');
+ checkCaptionsHidden(video);
+
+ // Captions track should become visible after the track is selected.
+ clickTextTrackAtIndex(video, 0);
+ checkCaptionsVisible(video, captions);
+
+ // Captions should not be visible after they're turned off through the menu.
+ turnClosedCaptionsOff(video);
+ checkCaptionsHidden(video);
+
+ // Captions track should become visible after the track is selected again.
+ clickTextTrackAtIndex(video, 0);
+ checkCaptionsVisible(video, captions);
+ }));
+ });
+
+ video.src = findMediaFile('video', '../content/counting');
+});
+</script>

Powered by Google App Engine
This is Rietveld 408576698