track-add-track.html (1268B)
1 <!DOCTYPE html> 2 <title>'addtrack' event is fired when a TextTrack is created</title> 3 <script src="/resources/testharness.js"></script> 4 <script src="/resources/testharnessreport.js"></script> 5 <script> 6 async_test(function(t) { 7 var video = document.createElement('video'); 8 9 var trackElement = document.createElement('track'); 10 video.appendChild(trackElement); 11 var tracks = []; 12 tracks.push(trackElement.track); 13 14 // Register the 'addtrack' listener after creating the element 15 // to make sure the event is dispatched asynchronously. 16 video.textTracks.onaddtrack = t.step_func(function(event) { 17 assert_equals(event.target, video.textTracks); 18 assert_true(event instanceof TrackEvent, 'instanceof'); 19 assert_equals(event.track, tracks[video.textTracks.length - 1]); 20 21 if (video.textTracks.length == 1) { 22 tracks.push(video.addTextTrack('captions', 'Caption Track', 'en')); 23 assert_equals(video.textTracks.length, 2); 24 } else { 25 t.done(); 26 } 27 }); 28 29 trackElement.src = 'resources/webvtt-file.vtt'; 30 trackElement.track.mode = 'hidden'; 31 assert_equals(video.textTracks.length, 1); 32 assert_equals(trackElement.readyState, HTMLTrackElement.NONE); 33 }); 34 </script>