Remove setTimeout from media/video-seek-past-end-paused.html and fix other minor...
authorvrk@chromium.org <vrk@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 12 Apr 2012 18:24:52 +0000 (18:24 +0000)
committervrk@chromium.org <vrk@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 12 Apr 2012 18:24:52 +0000 (18:24 +0000)
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@114005 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/ChangeLog
LayoutTests/media/video-seek-past-end-paused-expected.txt
LayoutTests/media/video-seek-past-end-paused.html
LayoutTests/platform/chromium/test_expectations.txt

index c3bed35..856ff78 100644 (file)
@@ -1,3 +1,19 @@
+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.
index 707b5d2..50314d0 100644 (file)
@@ -1,6 +1,4 @@
-Test that seeking paused video past it's duration time sets currentTime to duration and leaves video paused.
-
-RUN(video.load())
+Test that seeking paused video past its duration time sets currentTime to duration and leaves video paused.
 
 EVENT(canplaythrough)
 EXPECTED (video.paused == 'true') OK
index e9c784e..02a6952 100644 (file)
@@ -1,45 +1,61 @@
-
-<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>
index 2d97086..3b9d75e 100644 (file)
@@ -3778,8 +3778,6 @@ BUGWK83324 WIN DEBUG : fast/js/cross-global-object-inline-global-var.html = PASS
 BUGWK19688 SKIP : fast/images/exif-orientation.html = FAIL
 BUGWK19688 SKIP : fast/images/exif-orientation-css.html = FAIL
 
-BUGCR122448 : media/video-seek-past-end-paused.html = PASS TEXT
-
 BUGCR122462 WIN LINUX : http/tests/inspector/inspect-element.html = TEXT
 
 BUGWK83503 LINUX DEBUG : plugins/inner-html-display-none.html = CRASH