Bug 1839170 - Refactor Snap pulling, Add Firefox Snap Core22 and GNOME 42 SDK symbols...
[gecko.git] / dom / media / test / test_bug1242338.html
blob7b72153a6eb69374faca8bb6cba52c43a21c5fde
1 <!DOCTYPE HTML>
2 <html>
3 <head>
4 <title>Test Bug 1242338</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">
13 var manager = new MediaTestManager;
15 function startTest(test, token) {
16 var video = document.createElement('video');
17 video.preload = "metadata";
18 video.token = token;
20 var handler = {
21 "ontimeout": function() {
22 Log(token, "timed out");
25 manager.started(token, handler);
27 video.src = test.name;
28 video.name = test.name;
30 function finish() {
31 video.finished = true;
32 video.removeEventListener("loadedmetadata", onLoadedmetadata);
33 video.removeEventListener("ended", onEnded);
34 removeNodeAndSource(video);
35 manager.finished(video.token);
38 function onLoadedmetadata() {
39 // seek to the media's duration
40 var duration = video.duration;
41 console.log("onloadedmetadata(), duration = " + duration);
42 video.currentTime = duration;
45 function onEnded() {
46 ok(video.ended, test.name + " checking playback has ended");
47 ok(!video.finished, test.name + " shouldn't be finished");
48 ok(!video.seenEnded, test.name + " shouldn't be ended");
49 video.seenEnded = true;
51 ok(true, "Seeking to the duration triggers ended event");
52 finish();
55 video.addEventListener("loadedmetadata", onLoadedmetadata);
56 video.addEventListener("ended", onEnded);
58 document.body.appendChild(video);
61 manager.runTests(gSeekTests, startTest);
63 </script>
64 </pre>
65 </body>
66 </html>