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

Unified Diff: LayoutTests/media/video-double-seek-currentTime.html

Issue 235953010: Resolve the issue of unexpected currentTime values when setting currentTime from seeking event (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@mediaposter
Patch Set: Created 6 years, 8 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
Index: LayoutTests/media/video-double-seek-currentTime.html
diff --git a/LayoutTests/media/video-double-seek-currentTime.html b/LayoutTests/media/video-double-seek-currentTime.html
new file mode 100644
index 0000000000000000000000000000000000000000..b0c388b5efd2ef2dd91a0c031022cbf441c6689a
--- /dev/null
+++ b/LayoutTests/media/video-double-seek-currentTime.html
@@ -0,0 +1,75 @@
+<video controls></video>
acolwell GONE FROM CHROMIUM 2014/04/16 15:33:13 nit: Please add <!DOCTYPE html> and place this stu
+<script src=media-file.js></script>
+<script src=video-test.js></script>
+<script>
+var seekCount = 0;
+var expectedSeek = 0;
+
+function log(str) {
acolwell GONE FROM CHROMIUM 2014/04/16 15:33:13 Remove this function and replace all calls with co
+ var fragment = document.createDocumentFragment();
+ fragment.appendChild(document.createTextNode(str));
+ fragment.appendChild(document.createElement('br'));
+
+ document.querySelector("#log").appendChild(fragment);
+}
+
+function seeking(e) {
acolwell GONE FROM CHROMIUM 2014/04/16 15:33:13 nit: { for functions should be on the next line ju
+ log("seeking " + e.target.currentTime);
+
+ doNextSeek(e.target);
+}
+
+function seeked(e) {
+ log("seeked " + e.target.currentTime);
acolwell GONE FROM CHROMIUM 2014/04/16 15:33:13 nit: The logged value should be fixed as well to a
+
+ var now = e.target.currentTime.toFixed(2);
+ var expected = expectedSeek.toFixed(2);
+ if (now != expected) {
+ log('Expected ' + expectedSeek + ' got ' + now);
acolwell GONE FROM CHROMIUM 2014/04/16 15:33:13 nit: use failTest() here and early return.
+ }
+ testExpected("video.currentTime", 1.5)
+ endTest();
+}
+
+function doNextSeek(video) {
+ log("doNextSeek() " + seekCount);
+
+ var newSeekPoint = -1;
+ switch (seekCount) {
acolwell GONE FROM CHROMIUM 2014/04/16 15:33:13 nit: fix indent.
+ case 0:
+ newSeekPoint = 1;
+ break;
+ case 1:
+ newSeekPoint = 1.5;
+ break;
+ case 2:
+ newSeekPoint = 1.5;
+ break;
+ };
+
+ if (newSeekPoint >= 0) {
+ log('doNextSeek() seeking to ' + newSeekPoint);
acolwell GONE FROM CHROMIUM 2014/04/16 15:33:13 nit: use toFixed() here.
+ expectedSeek = newSeekPoint;
+ video.currentTime = newSeekPoint;
+ }
+ seekCount++;
+}
+
+function loadedmetadata(e) {
+ log("loadedmetadata() ");
+ doNextSeek(e.target);
+}
+
+function onWindowLoad(e) {
+ //var video = document.getElementById('video');
acolwell GONE FROM CHROMIUM 2014/04/16 15:33:13 nit: Please remove if this isn't needed.
+
+ video.src = findMediaFile("video", "content/test");
+ video.addEventListener('seeking', seeking);
+ video.addEventListener('seeked', seeked);
+ video.addEventListener('loadedmetadata', loadedmetadata);
+ video.load();
+}
+
+window.addEventListener('load', onWindowLoad, false);
+</script>
+<div id="log"> </div>

Powered by Google App Engine
This is Rietveld 408576698