summaryrefslogtreecommitdiffstats
path: root/dom/url/tests/file_worker_url.jsm
blob: d0bbf62fed2440aa7b02918eeac20deeb0db967d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
this.EXPORTED_SYMBOLS = ['checkFromJSM'];

Components.utils.importGlobalProperties(['URL']);

this.checkFromJSM = function checkFromJSM(ok, is, finish) {
  let worker = new ChromeWorker("jsm_url_worker.js");
  worker.onmessage = function(event) {

   if (event.data.type == 'finish') {
     finish();
    } else if (event.data.type == 'url') {
      URL.revokeObjectURL(event.data.url);
    } else if (event.data.type == 'status') {
      ok(event.data.status, event.data.msg);
    }
  }

  worker.onerror = function(event) {
    is(event.target, worker);
    ok(false, "Worker had an error: " + event.data);
    worker.terminate();
    finish();
  };

  worker.postMessage(0);
}