diff options
Diffstat (limited to 'testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-missed.html')
-rw-r--r-- | testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-missed.html | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-missed.html b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-missed.html new file mode 100644 index 0000000000..2acae212d2 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-missed.html @@ -0,0 +1,59 @@ +<!DOCTYPE html> +<title>Events are triggered for missed (skipped) cues during normal playback</title> +<script src="/common/media.js"></script> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<video> + <track src="resources/missed-cues.vtt" default> + <script> + async_test(function(t) { + var video = document.querySelector("video"); + var testTrack = document.querySelector("track"); + + video.src = getVideoURI("/media/test"); + + video.onended = t.step_func_done(); + + video.oncanplaythrough = t.step_func(function() { + video.oncanplaythrough = null; + video.currentTime = 5.00; + runTests(); + }); + + testTrack.onload = t.step_func(runTests); + + var cueCount; + var eventCount = 0; + function runTests() { + eventCount++; + + if(eventCount != 2) + return; + + assert_equals(testTrack.track.cues.length, 7); + + for (cueCount = 2; cueCount < testTrack.track.cues.length; cueCount++) { + var cue = testTrack.track.cues[cueCount]; + + cue.onenter = t.step_func(cueEnteredOrExited); + cue.onexit = t.step_func(cueEnteredOrExited); + } + + // Test events for missed cues, which are cues with ids + // from 3 to 7 in the file resources/missed-cues.vtt. + cueCount = 3; + video.play(); + } + + function cueEnteredOrExited(event) { + var currentCue = event.target; + assert_equals(testTrack.track.cues.getCueById(cueCount).text, currentCue.text); + assert_equals(currentCue.id, cueCount.toString()); + + if (event.type == "exit") + cueCount++; + } + + }); + </script> +</video> |