diff options
Diffstat (limited to 'dom/url/tests/url_worker.js')
-rw-r--r-- | dom/url/tests/url_worker.js | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/dom/url/tests/url_worker.js b/dom/url/tests/url_worker.js new file mode 100644 index 000000000..2127acee7 --- /dev/null +++ b/dom/url/tests/url_worker.js @@ -0,0 +1,91 @@ +onmessage = function(event) { + if (event.data != 0) { + var worker = new Worker('url_worker.js'); + worker.onmessage = function(event) { + postMessage(event.data); + } + + worker.postMessage(event.data - 1); + return; + } + + status = false; + try { + if ((URL instanceof Object)) { + status = true; + } + } catch(e) { + } + + postMessage({type: 'status', status: status, msg: 'URL object:' + URL}); + + status = false; + var blob = null; + try { + blob = new Blob([]); + status = true; + } catch(e) { + } + + postMessage({type: 'status', status: status, msg: 'Blob:' + blob}); + + status = false; + var url = null; + try { + url = URL.createObjectURL(blob); + status = true; + } catch(e) { + } + + postMessage({type: 'status', status: status, msg: 'Blob URL:' + url}); + + status = false; + try { + URL.revokeObjectURL(url); + status = true; + } catch(e) { + } + + postMessage({type: 'status', status: status, msg: 'Blob Revoke URL'}); + + status = false; + var url = null; + try { + url = URL.createObjectURL(true); + } catch(e) { + status = true; + } + + postMessage({type: 'status', status: status, msg: 'CreateObjectURL should fail if the arg is not a blob'}); + + status = false; + var url = null; + try { + url = URL.createObjectURL(blob); + status = true; + } catch(e) { + } + + postMessage({type: 'status', status: status, msg: 'Blob URL2:' + url}); + postMessage({type: 'url', url: url}); + + status = false; + try { + URL.createObjectURL(new Object()); + } catch(e) { + status = true; + } + + postMessage({type: 'status', status: status, msg: 'Exception wanted' }); + + var blob = new Blob([123]); + var uri = URL.createObjectURL(blob); + postMessage({type: 'status', status: !!uri, + msg: "The URI has been generated from the blob"}); + + var u = new URL(uri); + postMessage({type: 'status', status: u.origin == 'http://mochi.test:8888', + msg: "The URL generated from a blob URI has an origin."}); + + postMessage({type: 'finish' }); +} |