test_seek_nosrc.html (1506B)
1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <title>Media test: seek tests</title> 5 <script src="/tests/SimpleTest/SimpleTest.js"></script> 6 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> 7 <script type="text/javascript" src="manifest.js"></script> 8 </head> 9 <body> 10 <pre id="test"> 11 <script class="testbody" type="text/javascript"> 12 13 SimpleTest.waitForExplicitFinish(); 14 15 var SEEK_TIME = 3.5; 16 var seekStarted = false; 17 var seekCompleted = false; 18 var metadata = false; 19 20 var v = document.createElement('video'); 21 document.body.appendChild(v); 22 SimpleTest.registerCleanupFunction(function () { 23 v.remove(); 24 }); 25 26 try { 27 v.currentTime = SEEK_TIME; 28 } catch (e) { 29 ok(false, "should not fire '" + e + "' event"); 30 } 31 is(v.readyState, v.HAVE_NOTHING, "readyState is HAVE_NOTHING"); 32 ok(!v.seeking, "can't be seeking prior src defined"); 33 is(v.currentTime, SEEK_TIME, "currentTime is default playback start position"); 34 once(v, "seeking", function() { 35 seekStarted = true; 36 }); 37 once(v, "seeked", function() { 38 seekCompleted = true; 39 }); 40 once(v, "loadedmetadata", function() { 41 metadata = true; 42 ok(v.seeking, "element is seeking once readyState is HAVE_METADATA"); 43 }); 44 once(v, "ended", function() { 45 ok(seekStarted, "seek should have started"); 46 ok(seekCompleted, "seek should have completed"); 47 ok(metadata, "loadedmetadata fired"); 48 ok(v.currentTime >= SEEK_TIME, "currentTime should be after seek time"); 49 SimpleTest.finish(); 50 }); 51 52 v.src = "seek.webm"; 53 v.play(); 54 55 </script> 56 </pre> 57 </body> 58 </html>