Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(898)

Unified Diff: third_party/WebKit/LayoutTests/http/tests/media/video-seek-to-duration.html

Issue 2177793003: Convert video-seek* and video-served* http tests to testharness.js (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/http/tests/media/video-seek-to-duration-expected.txt » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/LayoutTests/http/tests/media/video-seek-to-duration.html
diff --git a/third_party/WebKit/LayoutTests/http/tests/media/video-seek-to-duration.html b/third_party/WebKit/LayoutTests/http/tests/media/video-seek-to-duration.html
index 75baddb47958a4c8ac126466bcce5cc3bd67b54c..ba61b9c7ab4d4114bf9b9af95c9ac3980d643b4d 100644
--- a/third_party/WebKit/LayoutTests/http/tests/media/video-seek-to-duration.html
+++ b/third_party/WebKit/LayoutTests/http/tests/media/video-seek-to-duration.html
@@ -1,77 +1,54 @@
-<html>
- <head>
- <script src=../../media-resources/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=../../media-resources/video-test.js></script>
- <script>
- function start()
- {
- findMediaElement();
-
- waitForEvent('durationchange');
- waitForEvent('loadedmetadata');
- waitForEventOnce('loadeddata', function ()
- {
- waitForEvent('seeking', function ()
- {
- testExpected('video.seeking', true, '==');
- testExpected('video.ended', true, '==');
- testExpected('video.currentTime == video.duration', true, '==');
- testExpected('video.paused', false, '==');
-
- waitForEventOnce('timeupdate', function()
- {
- testExpected('video.seeking', false, '==');
- testExpected('video.ended', true, '==');
- testExpected('video.currentTime == video.duration', true, '==');
- });
- });
-
- waitForEvent('seeked', function ()
- {
- testExpected('video.seeking', false, '==');
- testExpected('video.ended', true, '==');
- testExpected('video.currentTime == video.duration', true, '==');
-
- });
-
- waitForEvent('pause', function()
- {
- testExpected('video.paused', true, '==');
- testExpected('video.seeking', false, '==');
- testExpected('video.ended', true, '==');
- testExpected('video.currentTime == video.duration', true, '==');
- });
-
- waitForEvent('ended', function ()
- {
- testExpected('video.seeking', false, '==');
- testExpected('video.ended', true, '==');
- testExpected('video.paused', true, '==');
- testExpected('video.currentTime == video.duration', true, '==');
- endTest();
- });
-
- // Seek to the duration of the media
- testExpected('video.currentTime < video.duration', true, '==');
- testExpected('video.ended', false, '==');
- testExpected('video.paused', false, '==');
- consoleWrite('Starting seek to duration by setting video.currentTime to video.duration');
- video.currentTime = video.duration;
- testExpected('video.currentTime == video.duration', true, '==');
- testExpected('video.seeking', true, '==');
- testExpected('video.ended', true, '==');
- });
-
- var mediaFile = findMediaFile('video', 'resources/test');
- video.src = '/' + mediaFile;
- run('video.play()');
- }
- </script>
- </head>
- <body onload="start()">
- <video></video>
- <p>Test event dispatches and attribute changes for seek to duration</p>
- </body>
-</html>
+<!DOCTYPE html>
+<title>Test event dispatches and attribute changes for seek to duration.</title>
+<script src="../resources/testharness.js"></script>
+<script src="../resources/testharnessreport.js"></script>
+<script src="../../media-resources/media-file.js"></script>
+<video></video>
+<script>
+async_test(function(t) {
+ var video = document.querySelector("video");
+
+ var watcher = new EventWatcher(t, video, ["durationchange", "loadedmetadata",
+ "loadeddata", "seeking", "timeupdate", "seeked", "pause", "ended"]);
+
+ watcher.wait_for(["durationchange", "loadedmetadata", "loadeddata"]).then(t.step_func(function() {
+ // Seek to the duration of the media.
+ assert_less_than(video.currentTime, video.duration);
+ assert_false(video.ended)
+ assert_false(video.paused);
+ //Starting seek to duration by setting video.currentTime to video.duration.
+ video.currentTime = video.duration;
+ testCommonAttributes(true);
+ return watcher.wait_for("seeking");
+ })).then(t.step_func(function() {
+ testCommonAttributes(true);
+ assert_false(video.paused);
+ return watcher.wait_for("timeupdate");
+ })).then(t.step_func(function() {
+ testCommonAttributes(false);
+ return watcher.wait_for("seeked");
+ })).then(t.step_func(function() {
+ testCommonAttributes(false);
+ return watcher.wait_for("timeupdate");
Srirama 2016/07/25 11:05:06 Added this extra "timeupdate" event so that we wil
fs 2016/07/25 15:17:59 Acknowledged.
+ })).then(t.step_func(function() {
+ testCommonAttributes(false);
+ return watcher.wait_for("pause");
+ })).then(t.step_func(function() {
+ assert_true(video.paused);
+ testCommonAttributes(false);
+ return watcher.wait_for("ended");
+ })).then(t.step_func_done(function() {
+ testCommonAttributes(false);
+ assert_true(video.paused);
+ }));
+
+ function testCommonAttributes(seekingExpected) {
+ assert_equals(video.seeking, seekingExpected);
+ assert_true(video.ended);
+ assert_equals(video.currentTime, video.duration);
+ }
+
+ video.src = findMediaFile("video", "resources/test");;
+ video.play();
+});
+</script>
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/http/tests/media/video-seek-to-duration-expected.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698