5 <title>Blob URLs fetched in workers
</title>
6 <script src=
"/tests/SimpleTest/SimpleTest.js"></script>
7 <link rel=
"stylesheet" type=
"text/css" href=
"/tests/SimpleTest/test.css"/>
12 SimpleTest
.waitForExplicitFinish();
19 return new Promise(resolve
=> {
20 let openerURL
= SimpleTest
.getTestFileURL("fileapi_chromeScript.js");
21 let opener
= SpecialPowers
.loadChromeScript(openerURL
);
23 opener
.addMessageListener("files.opened", files
=> {
27 opener
.sendAsyncMessage("files.open", [ "I am the blob content" ]);
31 // Just a couple of checks
33 ok(file
instanceof File
, "We want a file");
34 ok(file
.size
> 0, "We have content");
38 // Let's create a blobURL
39 .then(file
=> URL
.createObjectURL(file
))
41 // Let's send it to a worker.
43 return new Promise(resolve
=> {
44 let w
= new Worker('worker_bug1507893.js');
52 // Let's check the worker's output
54 ok(blob
instanceof File
, "The worker sends us a blob");
55 ok(blob
.size
> 0, "We have data");
59 .then(SimpleTest
.finish
);