test_fileReader.js (971B)
1 /* Any copyright is dedicated to the Public Domain. 2 http://creativecommons.org/publicdomain/zero/1.0/ */ 3 4 // Worker must be loaded from a chrome:// uri, not a file:// 5 // uri, so we first need to load it. 6 var WORKER_SOURCE_URI = "chrome://workers/content/worker_fileReader.js"; 7 do_load_manifest("data/chrome.manifest"); 8 9 function talk_with_worker(worker) { 10 return new Promise((resolve, reject) => { 11 worker.onmessage = function (event) { 12 let success = true; 13 if (event.data == "OK") { 14 resolve(); 15 } else { 16 success = false; 17 reject(event); 18 } 19 Assert.ok(success); 20 worker.terminate(); 21 }; 22 worker.onerror = function (event) { 23 let error = new Error(event.message, event.filename, event.lineno); 24 worker.terminate(); 25 reject(error); 26 }; 27 worker.postMessage("START"); 28 }); 29 } 30 31 add_task(function test_chrome_worker() { 32 return talk_with_worker(new ChromeWorker(WORKER_SOURCE_URI)); 33 });