47 lines
1.2 KiB
HTML
47 lines
1.2 KiB
HTML
<!DOCTYPE HTML>
|
|
<!-- vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: -->
|
|
<html>
|
|
<head>
|
|
<script src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<script src="/tests/SimpleTest/EventUtils.js"></script>
|
|
<link rel="stylesheet" href="/tests/SimpleTest/test.css">
|
|
</head>
|
|
<body >
|
|
<script type="text/javascript">
|
|
SimpleTest.waitForExplicitFinish();
|
|
|
|
var childXHRFinished = false;
|
|
var xhrFinished = false;
|
|
var subTab = null;
|
|
|
|
function receivedInput() {
|
|
ok(xhrFinished, "Input event should be handled after the sync xhr");
|
|
SimpleTest.finish();
|
|
}
|
|
|
|
function startSlowXHR() {
|
|
var xhr = new XMLHttpRequest();
|
|
xhr.open("GET", "slow.sjs", false);
|
|
subTab.startSlowXHR();
|
|
xhr.send(null);
|
|
|
|
// Above xhr.send(null) should spin up an event loop to process the inner XHR first
|
|
ok(childXHRFinished, "Child's XHR should be finished first");
|
|
xhrFinished = true;
|
|
}
|
|
|
|
async function runTest() {
|
|
await SpecialPowers.pushPrefEnv({
|
|
set: [["dom.input_events.canSuspendInBCG.enabled", true]]
|
|
});
|
|
subTab = window.open("file_sync_xhr_nested_helper.html");
|
|
await new Promise((r) => {
|
|
subTab.addEventListener("load", r);
|
|
});
|
|
startSlowXHR();
|
|
}
|
|
|
|
runTest();
|
|
</script>
|
|
</body>
|
|
</html>
|