| <!DOCTYPE html> |
| <html> |
| |
| <title>BCP Language</title> |
| <script src=../media-file.js></script> |
| <script src=../video-test.js></script> |
| |
| <script> |
| var test = 0; |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| |
| window.addEventListener('load', function() { |
| findMediaElement(); |
| |
| testExpected("internals.textTrackBCP47Language(track1.track)", "zh"); |
| testExpected("track1.track.language", "zh"); |
| |
| track1.setAttribute("srclang", "zh-Hant"); |
| testExpected("internals.textTrackBCP47Language(track1.track)", "zh-Hant"); |
| testExpected("track1.track.language", "zh-Hant"); |
| |
| // Set to invalid code (country code must be <= 3) |
| track1.setAttribute("srclang", "zhHant"); |
| testExpected("internals.textTrackBCP47Language(track1.track)", ""); |
| testExpected("track1.track.language", "zhHant"); |
| |
| track1.setAttribute("srclang", "zh-cmn-Hans-CN"); |
| testExpected("internals.textTrackBCP47Language(track1.track)", "zh-cmn-Hans-CN"); |
| testExpected("track1.track.language", "zh-cmn-Hans-CN"); |
| |
| // <track> srclang attribute is invalid (invalid first character) |
| testExpected("internals.textTrackBCP47Language(track2.track)", ""); |
| testExpected("track2.track.language", "-sl"); |
| |
| track2.setAttribute("srclang", "sl-rozaj-biske"); |
| testExpected("internals.textTrackBCP47Language(track2.track)", "sl-rozaj-biske"); |
| testExpected("track2.track.language", "sl-rozaj-biske"); |
| |
| endTest(); |
| }); |
| |
| </script> |
| |
| <body> |
| <p>Test that TextTrackBase.validBCP47Language is set and reset correctly.</p> |
| <video width="500" height="300" controls> |
| <track id="track1" kind="captions" srclang="zh" label="" /> |
| <track id="track2" kind="captions" srclang="-sl" /> |
| </video> |
| </body> |
| </html> |
| |