mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-24 02:35:41 +00:00
Bug 1264593 - Add a test case for the isolation on the shared worker by first party domain. r=arthuredelstein,baku
Adapted from Tor Browser patch 15564 --HG-- extra : rebase_source : 60d09115cf76fab8dee9868d233ce962b5c8eea8
This commit is contained in:
parent
ccb0396db8
commit
33d9942f0a
@ -4,6 +4,8 @@ tags = usercontextid firstpartyisolation originattributes
|
||||
support-files =
|
||||
dummy.html
|
||||
file_firstPartyBasic.html
|
||||
file_sharedworker.html
|
||||
file_sharedworker.js
|
||||
head.js
|
||||
test.js
|
||||
test.js^headers^
|
||||
@ -26,3 +28,4 @@ support-files =
|
||||
[browser_localStorageIsolation.js]
|
||||
[browser_blobURLIsolation.js]
|
||||
[browser_imageCacheIsolation.js]
|
||||
[browser_sharedworker.js]
|
||||
|
@ -0,0 +1,26 @@
|
||||
/**
|
||||
* Bug 1264593 - A test case for the shared worker by first party isolation.
|
||||
*/
|
||||
|
||||
const TEST_DOMAIN = "http://example.net/";
|
||||
const TEST_PATH = TEST_DOMAIN + "browser/browser/components/originattributes/test/browser/";
|
||||
const TEST_PAGE = TEST_PATH + "file_sharedworker.html";
|
||||
|
||||
function* getResultFromSharedworker(aBrowser) {
|
||||
let response = yield ContentTask.spawn(aBrowser, null, function* () {
|
||||
let worker = new content.SharedWorker("file_sharedworker.js", "isolationSharedWorkerTest");
|
||||
|
||||
let result = yield new Promise(resolve => {
|
||||
worker.port.onmessage = function (e) {
|
||||
content.document.getElementById("display").innerHTML = e.data;
|
||||
resolve(e.data);
|
||||
};
|
||||
});
|
||||
|
||||
return result;
|
||||
});
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
IsolationTestTools.runTests(TEST_PAGE, getResultFromSharedworker);
|
@ -0,0 +1,10 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Page SharedWorker creator for first party isolation</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="display" style="white-space:pre; font-family:monospace; display:inline;"></div>
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,7 @@
|
||||
self.randomValue = Math.random();
|
||||
|
||||
onconnect = function (e) {
|
||||
let port = e.ports[0];
|
||||
port.postMessage(self.randomValue);
|
||||
port.start();
|
||||
};
|
Loading…
Reference in New Issue
Block a user