| <!DOCTYPE html> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
| |
| <script src=../trackmenu-test.js></script> |
| <script src=../video-test.js></script> |
| <script> |
| |
| function testVisibleCue() |
| { |
| consoleWrite(""); |
| consoleWrite("EVENT(seeked)"); |
| consoleWrite("EVENT(cuechange)"); |
| testExpected("video.textTracks[3].activeCues.length", 1); |
| consoleWrite(""); |
| |
| endTest(); |
| } |
| |
| function testTracks() |
| { |
| consoleWrite("<br><i>** Forced tracks should be in .textTracks, but not in the menu<" + "/i>"); |
| testExpected("video.textTracks.length", 9); |
| |
| consoleWrite("<br><i>** Only the 'fr' forced track should be showing<" + "/i>"); |
| testExpected("video.textTracks[0].language", "en"); |
| testExpected("video.textTracks[0].kind", "subtitles"); |
| testExpected("video.textTracks[0].mode", "disabled"); |
| consoleWrite(""); |
| |
| testExpected("video.textTracks[1].language", "en"); |
| testExpected("video.textTracks[1].kind", "forced"); |
| testExpected("video.textTracks[1].mode", "disabled"); |
| consoleWrite(""); |
| |
| testExpected("video.textTracks[2].language", "fr"); |
| testExpected("video.textTracks[2].kind", "subtitles"); |
| testExpected("video.textTracks[2].mode", "disabled"); |
| consoleWrite(""); |
| |
| testExpected("video.textTracks[3].language", "fr"); |
| testExpected("video.textTracks[3].kind", "forced"); |
| testExpected("video.textTracks[3].mode", "showing"); |
| consoleWrite(""); |
| |
| testExpected("video.textTracks[4].language", "es"); |
| testExpected("video.textTracks[4].kind", "subtitles"); |
| testExpected("video.textTracks[4].mode", "disabled"); |
| consoleWrite(""); |
| |
| testExpected("video.textTracks[5].language", "es"); |
| testExpected("video.textTracks[5].kind", "forced"); |
| testExpected("video.textTracks[5].mode", "disabled"); |
| consoleWrite(""); |
| |
| testExpected("video.textTracks[6].language", "de"); |
| testExpected("video.textTracks[6].kind", "subtitles"); |
| testExpected("video.textTracks[6].mode", "disabled"); |
| consoleWrite(""); |
| |
| testExpected("video.textTracks[7].language", "de"); |
| testExpected("video.textTracks[7].kind", "forced"); |
| testExpected("video.textTracks[7].mode", "disabled"); |
| consoleWrite(""); |
| |
| testExpected("video.textTracks[8].language", "en"); |
| testExpected("video.textTracks[8].kind", "captions"); |
| testExpected("video.textTracks[8].mode", "disabled"); |
| consoleWrite(""); |
| |
| waitForEventsAndCall([[video, 'seeked'], [video.textTracks[3], 'cuechange']], testVisibleCue); |
| |
| run("video.currentTime = 9.5"); |
| } |
| |
| function setup() |
| { |
| findMediaElement(); |
| run("internals.settings.setShouldDisplayTrackKind('Captions', false)"); |
| run("internals.settings.setShouldDisplayTrackKind('Subtitles', true)"); |
| run("internals.setUserPreferredLanguages(['en'])"); |
| run("internals.setPrimaryAudioTrackLanguageOverride('fr')"); |
| run("internals.setCaptionDisplayMode('ForcedOnly')"); |
| video.src = '../content/CC+Subtitles.mov'; |
| |
| waitForEvent('canplaythrough', testTracks); |
| } |
| |
| </script> |
| </head> |
| <body onload="setup()"> |
| <p>Tests that forced subtitles are enable automatically.</p> |
| <video width="640" height="360" controls> |
| </video> |
| </body> |
| </html> |