| <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
| <script src="../../js-test-resources/js-test-pre.js"></script> |
| </head> |
| <body onload="test()"> |
| This tests for proper execution order of scripts with the async attribute <a href="https://bugs.webkit.org/show_bug.cgi?id=20710">https://bugs.webkit.org/show_bug.cgi?id=20710</a>.<hr> |
| <div id="console"></div> |
| <script type="text/javascript"> |
| var jsTestIsAsync = true; |
| |
| function debug(msg) |
| { |
| if (!window.status_) |
| window.status_ = ''; |
| window.status_ += ' ' + msg + ' '; |
| } |
| |
| document.addEventListener("DOMContentLoaded", function() { |
| debug('DOMContentLoaded'); |
| }, false); |
| |
| function test() |
| { |
| var expectedA = " async external inline DOMContentLoaded slowAsync "; |
| var expectedB = " external async inline DOMContentLoaded slowAsync "; |
| var expectedC = " external inline async DOMContentLoaded slowAsync "; |
| var expectedD = " external inline DOMContentLoaded async slowAsync "; |
| var results = "PASS"; |
| if (window.status_ != expectedA && window.status_ != expectedB && window.status_ != expectedC && window.status_ != expectedD) |
| results = "FAIL: Expected one of '" + expectedA + "' || '" + expectedB + "' || '" + expectedC + "' || '" + expectedD + "', Actual='" + window.status_ + "'"; |
| document.getElementById("console").innerHTML = results; |
| finishJSTest(); |
| } |
| |
| </script> |
| <script src="http://127.0.0.1:8000/misc/resources/slow-async-script.cgi" async="ASYNC"></script> |
| <script src="http://127.0.0.1:8000/misc/resources/async-script.js" async="ASYNC"></script> |
| <script src="http://127.0.0.1:8000/misc/resources/external-script.js"></script> |
| <script> |
| debug("inline"); |
| </script> |
| <script src="../../js-test-resources/js-test-post.js"></script> |
| </body> |
| </html> |
| |
| |