track-webvtt-line-position.html (1818B)
1 <!DOCTYPE html> 2 <title>Cue line position from settings</title> 3 <script src="track-helpers.js"></script> 4 <script src="/resources/testharness.js"></script> 5 <script src="/resources/testharnessreport.js"></script> 6 <video> 7 <track src="resources/line-position.vtt"> 8 <track src="resources/line-position-bad.vtt"> 9 </video> 10 <script> 11 async_test(function(t) { 12 var video = document.querySelector("video"); 13 14 var trackElements = document.querySelectorAll("track"); 15 assert_equals(trackElements.length, video.textTracks.length); 16 for (var i = 0; i < trackElements.length; i++) 17 trackElements[i].onload = t.step_func(trackLoaded); 18 19 enableAllTextTracks(video.textTracks); 20 21 var numberOfTracksLoaded = 0; 22 function trackLoaded() { 23 numberOfTracksLoaded++; 24 if (numberOfTracksLoaded != 2) 25 return; 26 27 testTrack(0); 28 testTrackError(1); 29 t.done(); 30 } 31 32 function testTrack(index) { 33 var expected = [ 34 { line : 0, snapToLines : false }, 35 { line : 0, snapToLines : true }, 36 { line : 50, snapToLines : false }, 37 { line : 5, snapToLines : true }, 38 { line : 100, snapToLines : false }, 39 { line : -1, snapToLines : true }, 40 { line : 500, snapToLines : true } 41 ]; 42 43 assert_cues_match(video.textTracks[index].cues, expected); 44 } 45 46 function testTrackError(index) { 47 var expected = [ 48 { line : "auto", snapToLines : true }, 49 { line : "auto", snapToLines : true }, 50 { line : "auto", snapToLines : true }, 51 { line : "auto", snapToLines : true }, 52 { line : "auto", snapToLines : true } 53 ]; 54 55 assert_cues_match(video.textTracks[index].cues, expected); 56 } 57 }); 58 </script>