|
1 <!DOCTYPE HTML> |
|
2 <html> |
|
3 <!-- |
|
4 https://bugzilla.mozilla.org/show_bug.cgi?id=28293 |
|
5 --> |
|
6 <head> |
|
7 <title>Test for Bug 28293</title> |
|
8 <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> |
|
9 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> |
|
10 <script> |
|
11 scriptInsertedExternalExecuted = false; |
|
12 res = 'A'; |
|
13 |
|
14 SimpleTest.waitForExplicitFinish(); |
|
15 onload = function () { |
|
16 |
|
17 res+='2'; |
|
18 |
|
19 s = document.createElement('script'); |
|
20 s.textContent="res+='g';"; |
|
21 s.defer = true; |
|
22 document.body.appendChild(s); |
|
23 |
|
24 res+='3'; |
|
25 |
|
26 s = document.createElement('script'); |
|
27 s.textContent="res+='i';done()"; |
|
28 s.defer = true; |
|
29 document.body.appendChild(s); |
|
30 |
|
31 res+='4'; |
|
32 } |
|
33 |
|
34 function done() { |
|
35 is(res, "AacBCDEFGeHIJb1M2g3i", "scripts executed in the wrong order"); |
|
36 ok(scriptInsertedExternalExecuted, "Dynamic script did not block load"); |
|
37 SimpleTest.finish(); |
|
38 } |
|
39 </script> |
|
40 </head> |
|
41 <body> |
|
42 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=28293">Mozilla Bug 28293</a> |
|
43 |
|
44 <script defer> |
|
45 res += 'a'; |
|
46 </script> |
|
47 <script defer src="data:text/plain,res+='b'"></script> |
|
48 <script defer> |
|
49 res += 'c'; |
|
50 </script> |
|
51 <script> |
|
52 res += 'B'; |
|
53 </script> |
|
54 <script> |
|
55 res += 'C'; |
|
56 |
|
57 s = document.createElement('script'); |
|
58 s.textContent="res+='D';"; |
|
59 document.body.appendChild(s); |
|
60 |
|
61 res += 'E'; |
|
62 </script> |
|
63 <script> |
|
64 res += 'F'; |
|
65 document.addEventListener("DOMContentLoaded", function() { |
|
66 res += '1' |
|
67 s = document.createElement('script'); |
|
68 s.src="file_bug28293.sjs?res+='M';"; |
|
69 document.body.appendChild(s); |
|
70 }, false); |
|
71 res += 'G'; |
|
72 </script> |
|
73 <script defer> |
|
74 res += 'e'; |
|
75 </script> |
|
76 <script src="file_bug28293.sjs?res+='H';"></script> |
|
77 <script> |
|
78 res += 'I'; |
|
79 s = document.createElement('script'); |
|
80 s.src="file_bug28293.sjs?scriptInsertedExternalExecuted=true;"; |
|
81 document.body.appendChild(s); |
|
82 res += 'J'; |
|
83 </script> |
|
84 |
|
85 </body> |
|
86 </html> |