test_chromeWorker.xhtml (1892B)
1 <?xml version="1.0"?> 2 <!-- 3 Any copyright is dedicated to the Public Domain. 4 http://creativecommons.org/publicdomain/zero/1.0/ 5 --> 6 <window title="DOM Worker Threads Test" 7 xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> 8 9 <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/> 10 <script src="chrome://mochikit/content/tests/SimpleTest/EventUtils.js"/> 11 <script type="application/javascript" src="dom_worker_helper.js"/> 12 13 <script type="application/javascript"> 14 <![CDATA[ 15 16 add_task(async function classic_worker_test() { 17 let worker = window.classicWorker = new ChromeWorker("chromeWorker_worker.js"); 18 await new Promise((resolve, reject) => { 19 worker.onmessage = function(event) { 20 is(event.data, "Done!", "Got the done message!"); 21 resolve(); 22 }; 23 worker.onerror = function(event) { 24 ok(false, "Classic Worker had an error: " + event.message); 25 worker.terminate(); 26 reject(); 27 }; 28 worker.postMessage("go"); 29 }); 30 }); 31 32 add_task(async function module_worker_test() { 33 waitForWorkerFinish(); 34 35 let worker = window.moduleWorker = new ChromeWorker("chromeWorker_worker.sys.mjs", { type: "module" }); 36 await new Promise((resolve, reject) => { 37 worker.onmessage = function(event) { 38 is(event.data, "Done!", "Got the done message!"); 39 resolve(); 40 }; 41 worker.onerror = function(event) { 42 ok(false, "Module Worker had an error: " + event.message); 43 worker.terminate(); 44 reject(); 45 }; 46 worker.postMessage("go"); 47 }); 48 }); 49 ]]> 50 </script> 51 52 <body xmlns="http://www.w3.org/1999/xhtml"> 53 <p id="display"></p> 54 <div id="content" style="display:none;"></div> 55 <pre id="test"></pre> 56 </body> 57 <label id="test-result"/> 58 </window>