Chromium Code Reviews| Index: third_party/WebKit/LayoutTests/media/track/track-cues-sorted-before-dispatch.html |
| diff --git a/third_party/WebKit/LayoutTests/media/track/track-cues-sorted-before-dispatch.html b/third_party/WebKit/LayoutTests/media/track/track-cues-sorted-before-dispatch.html |
| index 8c6df18215931d22b0104527c937e01520327174..7a5da2981ca1d3e26918df5efe1d0585fd023f3f 100644 |
| --- a/third_party/WebKit/LayoutTests/media/track/track-cues-sorted-before-dispatch.html |
| +++ b/third_party/WebKit/LayoutTests/media/track/track-cues-sorted-before-dispatch.html |
| @@ -1,91 +1,48 @@ |
| <!DOCTYPE html> |
| -<html> |
| - <head> |
| - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
| - |
| - <script src=../media-file.js></script> |
| - <!-- TODO(foolip): Convert test to testharness.js. crbug.com/588956 |
| - (Please avoid writing new tests using video-test.js) --> |
| - <script src=../video-test.js></script> |
| - <script> |
| - var videoCanPlayThrough = false; |
| - var trackLoaded = false; |
| - |
| - var currentCue; |
| - var testTrack; |
| - |
| - var dispatchedEvents = []; |
| - |
| - function runTests() |
| - { |
| - if (!trackLoaded || !videoCanPlayThrough) |
| - return; |
| - |
| - testTrack = document.getElementById("testTrack"); |
| - testExpected("testTrack.track.cues.length", 8); |
| - |
| - for (var i = 0; i < testTrack.track.cues.length; ++i) { |
| - testTrack.track.cues[i].addEventListener('enter', cueEnteredOrExited); |
| - testTrack.track.cues[i].addEventListener('exit', cueEnteredOrExited); |
| - } |
| - |
| - run("video.play()"); |
| - } |
| - |
| - function cueEnteredOrExited(event) |
| - { |
| - currentCue = event.target; |
| - |
| - var eventObj = {}; |
| - |
| - eventObj.time = currentCue.startTime; |
| - if (event.type == 'exit') |
| - eventObj.time = currentCue.endTime; |
| - |
| - eventObj.type = event.type; |
| - eventObj.cue = currentCue; |
| - |
| - dispatchedEvents.push(eventObj); |
| - } |
| - |
| - function loaded() |
| - { |
| - trackLoaded = true; |
| - runTests(); |
| - } |
| - |
| - function bodyLoaded() |
| - { |
| - findMediaElement(); |
| - video.src = findMediaFile("video", "../content/test"); |
| - } |
| - |
| - function logEndTest() |
| - { |
| - for (var i = 0; i < dispatchedEvents.length; ++i) { |
| - consoleWrite("Cue event: " + dispatchedEvents[i].type + |
| - " id: " + dispatchedEvents[i].cue.id + |
| - " time: " + dispatchedEvents[i].time); |
| - } |
| - |
| - endTest(); |
| - } |
| - |
| - waitForEvent('ended', logEndTest); |
| - |
| - waitForEventOnce('canplaythrough', function() { |
| - video.currentTime = 5.00; |
| - videoCanPlayThrough = true; |
| - |
| - runTests(); |
| - }); |
| - |
| - </script> |
| - </head> |
| - <body onload="bodyLoaded()"> |
| - <p>Tests that all events events are triggered in chronological order.</p> |
| - <video controls> |
| - <track id="testTrack" src="captions-webvtt/sorted-dispatch.vtt" onload="loaded()" default> |
| - </video> |
| - </body> |
| -</html> |
| +<title>Tests that all events are triggered in chronological order.</title> |
| +<script src="../../resources/testharness.js"></script> |
| +<script src="../../resources/testharnessreport.js"></script> |
| +<script src="../media-file.js"></script> |
| +<video> |
| + <track src="captions-webvtt/sorted-dispatch.vtt" default> |
| +</video> |
| +<script> |
| +async_test(function(t) { |
| + var video = document.querySelector("video"); |
| + video.src = findMediaFile("video", "../content/test"); |
| + var track = document.querySelector("track"); |
| + |
| + track.onload = t.step_func(function() { |
| + var cues = track.track.cues; |
| + assert_equals(cues.length, 8); |
| + |
| + for (var i = 0; i < cues.length; ++i) { |
| + cues[i].onenter = t.step_func(cueEnteredOrExited); |
| + cues[i].onexit = t.step_func(cueEnteredOrExited); |
| + } |
| + |
| + video.play(); |
| + }); |
| + |
| + var cueTimings = []; |
| + function cueEnteredOrExited(event) { |
| + var currentCue = event.target; |
| + |
| + if (event.type == "exit") |
| + cueTimings.push(currentCue.endTime); |
| + else |
| + cueTimings.push(currentCue.startTime); |
| + } |
| + |
| + video.onended = t.step_func_done(function() { |
| + assert_equals(cueTimings.length, 14); |
| + var time = 0; |
| + for (var i = 0; i < cueTimings.length; ++i) { |
| + assert_less_than_equal(time, cueTimings[i], "cueTimings[i] " + i); |
|
fs
2016/06/18 17:38:12
Nit: Maybe "cueTimings[" + i + "]"
Srirama
2016/06/19 04:33:29
Done.
|
| + time = cueTimings[i]; |
| + } |
| + }); |
| + |
| + video.currentTime = 5; |
| +}); |
| +</script> |