| <!DOCTYPE html> |
| <html> |
| <head> |
| |
| <script src=../media-file.js></script> |
| <script src=../video-test.js></script> |
| <script> |
| |
| var textTrack; |
| var cueCount; |
| |
| function setMode(value) |
| { |
| run("textTrack.mode = '" + value + "'"); |
| testExpected("textTrack.mode", value); |
| testExpected("video.textTracks[0].mode", value); |
| if (value == "disabled") |
| testExpected("textTrack.cues", null); |
| else |
| testExpected("textTrack.cues.length", textTrack.cues.length); |
| consoleWrite(""); |
| } |
| |
| function start() |
| { |
| findMediaElement(); |
| cueCount = 0; |
| consoleWrite(""); |
| |
| textTrack = document.getElementById('track_1').track; |
| |
| consoleWrite("<b>++ Test default attribute value</b>"); |
| testExpected("textTrack.mode", "showing"); |
| testExpected("video.textTracks[0].mode", "showing"); |
| consoleWrite(""); |
| |
| consoleWrite("<b>*** Set to bogus value, should return default</b>"); |
| var value = "bogus"; |
| run("textTrack.mode = '" + value + "'"); |
| testExpected("textTrack.mode", "showing"); |
| testExpected("video.textTracks[0].mode", "showing"); |
| consoleWrite(""); |
| |
| consoleWrite("<b>*** Set to known values</b>"); |
| consoleWrite("<b>++ 'disabled'</b>"); |
| setMode("disabled"); |
| |
| video.src = findMediaFile("video", "../content/test"); |
| video.play(); |
| // Wait for end of first cue (no events should fire while track is disabled). |
| setTimeout(testHiddenAndShowing, 400); |
| consoleWrite("++ 0 events expected while mode = disabled"); |
| consoleWrite(""); |
| } |
| |
| function testHiddenAndShowing() |
| { |
| consoleWrite("<b>++ 'hidden'</b>"); |
| setMode("hidden"); |
| |
| consoleWrite("<b>++ 'showing'</b>"); |
| setMode("showing"); |
| |
| consoleWrite("++ at least " + textTrack.cues.length + " events expected while mode = showing"); |
| } |
| |
| waitForEvent('cuechange', |
| function (event) |
| { |
| cueCount++; |
| if (cueCount == textTrack.cues.length) |
| endTest(); |
| |
| } |
| ); |
| |
| </script> |
| </head> |
| <body> |
| <p>Tests that the TextTrack mode attribute is appropriately set.</p> |
| <video> |
| <track id=track_1 src="captions-webvtt/captions-fast.vtt" onload="start()" default> |
| </video> |
| </body> |
| </html> |