| OLD | NEW |
| (Empty) | |
| 1 <!DOCTYPE html> |
| 2 <title>Test that we can add multiple tracks and select between them from the tra
ck selection menu.</title> |
| 3 <script src="../../resources/testharness.js"></script> |
| 4 <script src="../../resources/testharnessreport.js"></script> |
| 5 <script src="../media-file.js"></script> |
| 6 <script src="../media-controls.js"></script> |
| 7 <!-- Width should be large enough to display closed captions button. --> |
| 8 <video controls style="width: 500px"></video> |
| 9 <script> |
| 10 async_test(t => { |
| 11 var video = document.querySelector("video"); |
| 12 var trackLanguages = ["en", "ru", "fr", "jp", "de"]; |
| 13 var trackCueText = ["English", "Russian", "French", "Japanese", "German"]; |
| 14 |
| 15 video.oncanplaythrough = t.step_func(_ => { |
| 16 for (var i = 0; i < trackLanguages.length; i++) { |
| 17 var track = video.addTextTrack("captions", trackCueText[i], trackLanguages
[i]); |
| 18 track.addCue(new VTTCue(0, 1, trackCueText[i])); |
| 19 track.mode = "disabled"; |
| 20 } |
| 21 |
| 22 // The controls are updated asynchronously. |
| 23 setTimeout(t.step_func_done(_ => { |
| 24 assert_true(isClosedCaptionsButtonVisible(video)); |
| 25 assert_equals(video.textTracks.length, trackLanguages.length); |
| 26 |
| 27 for (var i = 0; i < trackLanguages.length; i++) { |
| 28 clickTextTrackAtIndex(video, i); |
| 29 assert_equals(video.textTracks[i].mode, "showing"); |
| 30 assert_equals(textTrackDisplayElement(video).innerText, trackCueText[i])
; |
| 31 for (var j = 0; j < trackLanguages.length; j++) { |
| 32 if (j != i) |
| 33 assert_equals(video.textTracks[j].mode, "disabled"); |
| 34 } |
| 35 } |
| 36 })); |
| 37 }); |
| 38 |
| 39 video.src = findMediaFile("video", "../content/test"); |
| 40 }); |
| 41 </script> |
| OLD | NEW |