track-cues-missed-no-immediate-events.html (1152B)
1 <!DOCTYPE html> 2 <title>Adding a missed cue during playback should not fire events</title> 3 <script src="/common/media.js"></script> 4 <script src="/resources/testharness.js"></script> 5 <script src="/resources/testharnessreport.js"></script> 6 <video> 7 </video> 8 <script> 9 async_test(t => { 10 const video = document.querySelector("video"); 11 const track = video.addTextTrack("subtitles"); 12 let cueAdded = false; 13 14 video.ontimeupdate = t.step_func(() => { 15 // After 0.3s, add a cue that is completely before currentTime. 16 if (!cueAdded && video.currentTime > 0.3) { 17 cueAdded = true; 18 let missedCue = new VTTCue(0.1, 0.3, "Test"); 19 missedCue.onenter = t.unreached_func("onenter for missed cue should not fire"); 20 missedCue.onexit = t.unreached_func("onexit for missed cue should not fire"); 21 track.addCue(missedCue); 22 } 23 24 // We should play past 1s without the events firing. 25 if (video.currentTime > 1.0) { 26 video.ontimeupdate = null; 27 t.done(); 28 } 29 }); 30 31 video.src = getVideoURI("/media/test"); 32 video.play(); 33 }); 34 </script>