| OLD | NEW |
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <html> | 2 <title>Tests that the 'addtrack' event is fired when a TextTrack is created.</ti
tle> |
| 3 <head> | 3 <script src="../../resources/testharness.js"></script> |
| 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | 4 <script src="../../resources/testharnessreport.js"></script> |
| 5 <script> |
| 6 async_test(function(t) { |
| 7 var video = document.createElement('video'); |
| 5 | 8 |
| 6 <script src=../media-file.js></script> | 9 var trackElement = document.createElement('track'); |
| 7 <!-- TODO(philipj): Convert test to testharness.js. crbug.com/588956 | 10 video.appendChild(trackElement); |
| 8 (Please avoid writing new tests using video-test.js) --> | 11 var tracks = []; |
| 9 <script src=../video-test.js></script> | 12 tracks.push(trackElement.track); |
| 10 <script> | |
| 11 | 13 |
| 12 var tracks = []; | 14 // Register the 'addtrack' listener after creating the element |
| 13 var trackElement; | 15 // to make sure the event is dispatched asynchronously. |
| 14 function trackAdded() | 16 video.textTracks.onaddtrack = t.step_func(function() { |
| 15 { | 17 assert_equals(event.target, video.textTracks); |
| 16 consoleWrite("EVENT(" + event.type + ")"); | 18 assert_true(event instanceof TrackEvent, 'instanceof'); |
| 19 assert_equals(event.track, tracks[video.textTracks.length - 1]); |
| 17 | 20 |
| 18 testExpected("event.target", video.textTracks); | 21 if (video.textTracks.length == 1) { |
| 19 testExpected("event instanceof window.TrackEvent", true); | 22 tracks.push(video.addTextTrack('captions', 'Caption Track', 'en')); |
| 20 testExpected("event.track", tracks[video.textTracks.length - 1])
; | 23 assert_equals(video.textTracks.length, 2); |
| 24 } else { |
| 25 t.done(); |
| 26 } |
| 27 }); |
| 21 | 28 |
| 22 if (video.textTracks.length == 1) { | 29 trackElement.src = 'captions-webvtt/tc004-webvtt-file.vtt'; |
| 23 consoleWrite("<br>** Test a TextTrack created with video.add
TextTrack()."); | 30 trackElement.track.mode = 'hidden'; |
| 24 run("tracks.push(video.addTextTrack('captions', 'Caption Tra
ck', 'en'))"); | 31 assert_equals(video.textTracks.length, 1); |
| 25 testExpected("video.textTracks.length", 2); | 32 assert_equals(trackElement.readyState, HTMLTrackElement.NONE); |
| 26 } else { | 33 }); |
| 27 consoleWrite(""); | 34 </script> |
| 28 endTest(); | |
| 29 } | |
| 30 } | |
| 31 | |
| 32 function start() | |
| 33 { | |
| 34 findMediaElement(); | |
| 35 | |
| 36 consoleWrite("** Test a TextTrack created for a <track> el
ement."); | |
| 37 run("trackElement = document.createElement('track')"); | |
| 38 run("video.appendChild(trackElement)"); | |
| 39 tracks.push(trackElement.track); | |
| 40 | |
| 41 // Register the 'addtrack' listener after creating the element t
o make sure the | |
| 42 // event is dispatch asynchronously. | |
| 43 video.textTracks.addEventListener("addtrack", trackAdded); | |
| 44 | |
| 45 run("trackElement.src = 'captions-webvtt/tc004-webvtt-file.vtt'"
); | |
| 46 run("trackElement.track.mode = 'hidden'"); | |
| 47 testExpected("video.textTracks.length", 1); | |
| 48 testExpected("trackElement.readyState", HTMLTrackElement.NONE); | |
| 49 } | |
| 50 | |
| 51 </script> | |
| 52 </head> | |
| 53 <body onload="start()"> | |
| 54 <p>Tests that the 'addtrack' event is fired when a TextTrack is created.
</p> | |
| 55 <video> | |
| 56 </video> | |
| 57 </body> | |
| 58 </html> | |
| OLD | NEW |