1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/content/media/test/test_seek.html Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,91 @@ 1.4 +<!DOCTYPE HTML> 1.5 +<html> 1.6 +<head> 1.7 + <title>Media test: seek tests</title> 1.8 + <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> 1.9 + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> 1.10 + <script type="text/javascript" src="manifest.js"></script> 1.11 + <script type="text/javascript" src="seek1.js"></script> 1.12 + <script type="text/javascript" src="seek2.js"></script> 1.13 + <script type="text/javascript" src="seek3.js"></script> 1.14 + <script type="text/javascript" src="seek4.js"></script> 1.15 + <script type="text/javascript" src="seek5.js"></script> 1.16 + <script type="text/javascript" src="seek6.js"></script> 1.17 + <script type="text/javascript" src="seek7.js"></script> 1.18 + <script type="text/javascript" src="seek8.js"></script> 1.19 + <script type="text/javascript" src="seek9.js"></script> 1.20 + <script type="text/javascript" src="seek10.js"></script> 1.21 + <script type="text/javascript" src="seek11.js"></script> 1.22 + <script type="text/javascript" src="seek12.js"></script> 1.23 + <script type="text/javascript" src="seek13.js"></script> 1.24 +</head> 1.25 +<body> 1.26 +<pre id="test"> 1.27 +<script class="testbody" type="text/javascript"> 1.28 + 1.29 +SimpleTest.requestLongerTimeout(3); 1.30 +var manager = new MediaTestManager; 1.31 + 1.32 +// https://bugzilla.mozilla.org/show_bug.cgi?id=634747 1.33 +if (navigator.platform.startsWith("Win")) { 1.34 + SimpleTest.expectAssertions(0, 5); 1.35 +} else { 1.36 + // This is "###!!! ASSERTION: Page read cursor should be inside range: 'mPageOffset <= endOffset'" 1.37 + // https://bugzilla.mozilla.org/show_bug.cgi?id=846769 1.38 + SimpleTest.expectAssertions(0, 5); 1.39 +} 1.40 + 1.41 +const NUM_SEEK_TESTS = 13; 1.42 + 1.43 +function createTestArray() { 1.44 + var tests = []; 1.45 + var tmpVid = document.createElement("video"); 1.46 + 1.47 + for (var testNum=0; testNum<gSeekTests.length; testNum++) { 1.48 + var test = gSeekTests[testNum]; 1.49 + if (!tmpVid.canPlayType(test.type)) { 1.50 + continue; 1.51 + } 1.52 + 1.53 + for (var i = 1; i <= NUM_SEEK_TESTS; ++i) { 1.54 + var t = new Object; 1.55 + t.name = test.name; 1.56 + t.type = test.type; 1.57 + t.duration = test.duration; 1.58 + t.number = i; 1.59 + tests.push(t); 1.60 + } 1.61 + } 1.62 + return tests; 1.63 +} 1.64 + 1.65 +function startTest(test, token) { 1.66 + var v = document.createElement('video'); 1.67 + manager.started(token); 1.68 + v.src = test.name; 1.69 + v.preload = "metadata"; 1.70 + v.token = token; 1.71 + document.body.appendChild(v); 1.72 + var name = test.name + " seek test " + test.number; 1.73 + var localIs = function(name) { return function(a, b, msg) { 1.74 + is(a, b, name + ": " + msg); 1.75 + }}(name); 1.76 + var localOk = function(name) { return function(a, msg) { 1.77 + ok(a, name + ": " + msg); 1.78 + }}(name); 1.79 + var localFinish = function(v, manager) { return function() { 1.80 + v.onerror = null; 1.81 + removeNodeAndSource(v); 1.82 + dump("SEEK-TEST: Finished " + name + "\n"); 1.83 + manager.finished(v.token); 1.84 + }}(v, manager); 1.85 + dump("SEEK-TEST: Started " + name + "\n"); 1.86 + window['test_seek' + test.number](v, test.duration/2, localIs, localOk, localFinish); 1.87 +} 1.88 + 1.89 +manager.runTests(createTestArray(), startTest); 1.90 + 1.91 +</script> 1.92 +</pre> 1.93 +</body> 1.94 +</html>