diff options
Diffstat (limited to 'dom/tests/mochitest/dom-level0/file_separate_post_message_queue.html')
-rw-r--r-- | dom/tests/mochitest/dom-level0/file_separate_post_message_queue.html | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/dom/tests/mochitest/dom-level0/file_separate_post_message_queue.html b/dom/tests/mochitest/dom-level0/file_separate_post_message_queue.html new file mode 100644 index 0000000000..ce1494e3d2 --- /dev/null +++ b/dom/tests/mochitest/dom-level0/file_separate_post_message_queue.html @@ -0,0 +1,39 @@ +<script> + +let runnable1 = { + run() { + window.opener.callOrder.push("Runnable1"); + } +} + +let runnable2 = { + run() { + window.opener.callOrder.push("Runnable2"); + } +} + +let runnable3 = { + run() { + window.opener.callOrder.push("Runnable3"); + } +} + +window.onmessage = function () { + window.opener.callOrder.push("PostMessage"); + if (window.loadCount == 1) { + window.loadCount += 1; + location.reload(); + } else { + window.opener.onDone(); + } +}; + +// Pushed to normal queue +SpecialPowers.Services.tm.dispatchToMainThread(runnable1); +// Pushed to idle queue +window.postMessage("bar", "*"); +// Pushed to normal queue +SpecialPowers.Services.tm.dispatchToMainThread(runnable2); +// Pushed to normal queue +SpecialPowers.Services.tm.dispatchToMainThread(runnable3); +</script> |