blob: 9d02ff39f517c8c5c68c94e3e56fe8e44f88ffd8 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Defer Script Execution Order</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="resources/helper.js"></script>
</head>
<body>
<div id="scriptlog"/>
<input id="testElement"/>
<script>
setup({single_test: true});
function finish() {
assert_array_equals(
window.result,
["Inline1", "Sync1", "Inline2", "Sync2", "EndOfBody",
"Defer1", "Defer2", "DOMContentLoaded"],
"Execution order");
// Chromium order is (due to https://crbug.com/874749):
// ["Inline1", "Sync1", "Defer1", "Inline2", "Defer2", "Sync2",
// "EndOfBody", "DOMContentLoaded"]
done();
}
logScript("Inline1");
window.addEventListener("load", finish);
</script>
<script src="resources/sync-script-1.js"></script>
<script src="resources/defer-script-1.js" defer="defer"></script>
<script>
logScript("Inline2");
</script>
<script src="resources/defer-script-2.js" defer="defer"></script>
<script src="resources/sync-script-2.js"></script>
<pre id="bodyend">End</pre>
</body>
</html>