|
1 <!DOCTYPE HTML> |
|
2 <html> |
|
3 <!-- |
|
4 https://bugzilla.mozilla.org/show_bug.cgi?id=975270 |
|
5 --> |
|
6 <head> |
|
7 <meta charset="utf-8"> |
|
8 <title>Test for Bug </title> |
|
9 <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> |
|
10 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> |
|
11 <script type="application/javascript" src="manifest.js"></script> |
|
12 <script type="application/javascript"> |
|
13 |
|
14 /** Test for Bug 975270 **/ |
|
15 // Test that 'emptied' and 'abort' events are fired asynchronously when re-starting |
|
16 // media load. |
|
17 SimpleTest.waitForExplicitFinish(); |
|
18 |
|
19 var a = document.createElement("audio"); |
|
20 a._abort = 0; |
|
21 a._emptied = 0; |
|
22 a.preload = "metadata"; // On B2G we default to preload:none. |
|
23 |
|
24 is(a.networkState, HTMLMediaElement.NETWORK_EMPTY, "Shouldn't be loading"); |
|
25 |
|
26 a.addEventListener("abort", function(e) { a._abort++; }); |
|
27 a.addEventListener("emptied", function(e) { a._emptied++; }); |
|
28 a.addEventListener("loadedmetadata", |
|
29 function(e) { |
|
30 is(a._abort, 0, "Should not have received 'abort' before 'loadedmetadata"); |
|
31 is(a._emptied, 0, "Should not have received 'emptied' before 'loadedmetadata"); |
|
32 |
|
33 a.addEventListener("loadstart", |
|
34 function(e) { |
|
35 is(a._abort, 1, "Should have received 'abort' before 'loadstart"); |
|
36 is(a._emptied, 1, "Should have received 'emptied' before 'loadstart"); |
|
37 SimpleTest.finish(); |
|
38 }); |
|
39 |
|
40 a.src = ""; |
|
41 is(a._abort, 0, "Should not have received 'abort' during setting a.src=''"); |
|
42 is(a._emptied, 0, "Should not have received 'emptied' during setting a.src=''"); |
|
43 }); |
|
44 |
|
45 a.src = getPlayableAudio(gSmallTests).name; |
|
46 |
|
47 </script> |
|
48 </head> |
|
49 <body> |
|
50 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=">Mozilla Bug </a> |
|
51 <p id="display"></p> |
|
52 <div id="content" style="display: none"> |
|
53 |
|
54 </div> |
|
55 <pre id="test"> |
|
56 </pre> |
|
57 </body> |
|
58 </html> |