track-texttracks.html (1689B)
1 <!DOCTYPE html> 2 <title>TextTracks in a TextTrackList are kept in the correct order</title> 3 <script src="/resources/testharness.js"></script> 4 <script src="/resources/testharnessreport.js"></script> 5 <video> 6 <track kind="captions" src="resources/webvtt-file.vtt"> 7 </video> 8 <script> 9 test(function() { 10 var video = document.querySelector("video"); 11 12 // Add a track with video.addTextTrack(). 13 video.addTextTrack("descriptions", "Descriptions Track", "en"); 14 15 // Add a track element with DOM API. 16 var trackElement = document.createElement("track"); 17 trackElement.setAttribute("kind", "chapters"); 18 video.appendChild(trackElement); 19 20 // Verify track order. 21 assert_equals(video.textTracks.length, 3); 22 assert_equals(video.textTracks[0].kind, "captions"); 23 assert_equals(video.textTracks[1].kind, "chapters"); 24 assert_equals(video.textTracks[2].kind, "descriptions"); 25 26 // Verify the default parameters of the text track object 27 // returned by addTextTrack(). 28 assert_equals(video.textTracks[2].mode, "hidden"); 29 assert_not_equals(video.textTracks[2].cues, null); 30 assert_equals(video.textTracks[2].cues.length, 0); 31 32 // Add another track element, it should insert 33 // before the addTextTrack() track. 34 trackElement = document.createElement("track"); 35 trackElement.setAttribute("kind", "metadata"); 36 video.appendChild(trackElement); 37 38 assert_equals(video.textTracks.length, 4); 39 assert_equals(video.textTracks[0].kind, "captions"); 40 assert_equals(video.textTracks[1].kind, "chapters"); 41 assert_equals(video.textTracks[2].kind, "metadata"); 42 assert_equals(video.textTracks[3].kind, "descriptions"); 43 }); 44 </script>