browser_fileURL.js (1819B)
1 /* This Source Code Form is subject to the terms of the Mozilla Public 2 * License, v. 2.0. If a copy of the MPL was not distributed with this 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 "use strict"; 5 6 const EMPTY_URL = "/browser/dom/workers/test/empty.html"; 7 const WORKER_URL = "/browser/dom/workers/test/empty_worker.js"; 8 9 add_task(async function () { 10 let tab = BrowserTestUtils.addTab( 11 gBrowser, 12 "http://mochi.test:8888" + EMPTY_URL 13 ); 14 gBrowser.selectedTab = tab; 15 16 let browser = gBrowser.getBrowserForTab(tab); 17 await BrowserTestUtils.browserLoaded(browser); 18 19 await SpecialPowers.spawn( 20 browser, 21 ["http://example.org" + WORKER_URL], 22 function (spec) { 23 return new content.Promise((resolve, reject) => { 24 let w = new content.window.Worker(spec); 25 w.onerror = _ => { 26 resolve(); 27 }; 28 w.onmessage = _ => { 29 reject(); 30 }; 31 }); 32 } 33 ); 34 ok( 35 true, 36 "The worker is not loaded when the script is from different origin." 37 ); 38 39 BrowserTestUtils.removeTab(tab); 40 }); 41 42 add_task(async function () { 43 let tab = BrowserTestUtils.addTab( 44 gBrowser, 45 "https://example.org" + EMPTY_URL 46 ); 47 gBrowser.selectedTab = tab; 48 49 let browser = gBrowser.getBrowserForTab(tab); 50 await BrowserTestUtils.browserLoaded(browser); 51 52 await SpecialPowers.spawn( 53 browser, 54 ["http://example.org" + WORKER_URL], 55 function (spec) { 56 return new content.Promise((resolve, reject) => { 57 let w = new content.window.Worker(spec); 58 w.onerror = _ => { 59 resolve(); 60 }; 61 w.onmessage = _ => { 62 reject(); 63 }; 64 }); 65 } 66 ); 67 ok( 68 true, 69 "The worker is not loaded when the script is from different origin." 70 ); 71 72 BrowserTestUtils.removeTab(tab); 73 });