+2012-04-09 Victoria Kirst <vrk@chromium.org>
+
+ Remove setTimeout from media/video-seek-past-end-paused.html and fix other minor issues
+ https://bugs.webkit.org/show_bug.cgi?id=83505
+
+ The test had an arbitrary performance expectation to start playing in 200 ms,
+ which caused the layout test to fail for Chromium when the Chromium's
+ audio buffer size increased.
+ This CL removes that expectation and fixes some HTML and grammar mistakes.
+
+ Reviewed by Eric Carlson.
+
+ * media/video-seek-past-end-paused-expected.txt:
+ * media/video-seek-past-end-paused.html:
+ * platform/chromium/test_expectations.txt:
+
2012-04-12 Philippe Normand <pnormand@igalia.com>
Unreviewed, GTK test_expectations.
-
-<video controls></video>
-<p>Test that seeking paused video past it's duration time sets currentTime to duration and leaves video paused.</p>
-<script src=media-file.js></script>
-<script src=video-test.js></script>
-<script>
-
- waitForEvent('canplaythrough', function () {
- testExpected("video.paused", true);
- testExpected("video.ended", false);
- run("video.play()");
- setTimeout(timeCheck1, 200);
- });
-
- function timeCheck1()
- {
- consoleWrite("");
-
- // make sure time is advancing, seek past end
- testExpected("video.paused", false);
- testExpected("mediaElement.currentTime", 0, '>');
- video.currentTime = 500;
- setTimeout(timeCheck2, 200);
- }
-
- function timeCheck2()
- {
- consoleWrite("");
-
- // don't use "testExpected()" so we won't log the actual duration to the
- // results file, as the floating point result may differ with different engines
- reportExpected(mediaElement.currentTime == mediaElement.duration, "mediaElement.currentTime", "==", "mediaElement.duration", mediaElement.currentTime);
-
- testExpected("video.ended", true);
- consoleWrite("");
- endTest();
- }
-
- var mediaFile = findMediaFile("video", "content/test");
- disableFullTestDetailsPrinting();
- runSilently("video.src = '" + mediaFile + "'");
- enableFullTestDetailsPrinting();
- run("video.load()");
- consoleWrite("");
-</script>
+<!DOCTYPE html>
+<html>
+ <head>
+ <script src=media-file.js></script>
+ <script src=video-test.js></script>
+ <script>
+ var timeupdateEventCount = 0;
+
+ function doSetup()
+ {
+ findMediaElement();
+ waitForEvent('canplaythrough', canPlayThrough);
+ video.src = findMediaFile('video', 'content/test');
+ }
+ window.addEventListener('load', doSetup, false);
+
+ function canPlayThrough()
+ {
+ testExpected("video.paused", true);
+ testExpected("video.ended", false);
+ video.addEventListener('timeupdate', timeUpdate);
+ run("video.play()");
+ }
+
+ function timeUpdate()
+ {
+ ++timeupdateEventCount;
+
+ // wait 2 timeupdate events so we are sure the media engine is
+ // playing the media.
+ if (timeupdateEventCount == 2) {
+ consoleWrite("");
+
+ // make sure time is advancing, seek past end
+ testExpected("video.paused", false);
+ testExpected("mediaElement.currentTime", 0, '>');
+ video.addEventListener('seeked', seeked);
+ video.currentTime = 500;
+ }
+ }
+
+ function seeked()
+ {
+ consoleWrite("");
+
+ // don't use "testExpected()" so we won't log the actual duration to the
+ // results file, as the floating point result may differ with different engines
+ reportExpected(mediaElement.currentTime == mediaElement.duration, "mediaElement.currentTime", "==", "mediaElement.duration", mediaElement.currentTime);
+
+ testExpected("video.ended", true);
+ consoleWrite("");
+ timeupdateEventCount = 0;
+ endTest();
+ }
+ </script>
+ </head>
+ <body>
+ <video controls></video>
+ <p>Test that seeking paused video past its duration time sets currentTime to duration and leaves video paused.</p>
+ </body>
+</html>