summaryrefslogtreecommitdiffstats
path: root/browser/components/sessionstore/test/coopHeaderCommon.sjs
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/sessionstore/test/coopHeaderCommon.sjs')
-rw-r--r--browser/components/sessionstore/test/coopHeaderCommon.sjs31
1 files changed, 31 insertions, 0 deletions
diff --git a/browser/components/sessionstore/test/coopHeaderCommon.sjs b/browser/components/sessionstore/test/coopHeaderCommon.sjs
new file mode 100644
index 0000000000..919228f550
--- /dev/null
+++ b/browser/components/sessionstore/test/coopHeaderCommon.sjs
@@ -0,0 +1,31 @@
+function handleRequest(request, response) {
+ Cu.importGlobalProperties(["URLSearchParams"]);
+ let { NetUtil } = ChromeUtils.import("resource://gre/modules/NetUtil.jsm");
+ let query = new URLSearchParams(request.queryString);
+
+ response.setHeader("Cross-Origin-Opener-Policy", "same-origin", false);
+ response.setHeader("Cross-Origin-Embedder-Policy", "require-corp", false);
+
+ var fileRoot = query.get("fileRoot");
+
+ // Get the desired file
+ var file;
+ getObjectState("SERVER_ROOT", function(serverRoot) {
+ file = serverRoot.getFile(fileRoot);
+ });
+
+ // Set up the file streams to read in the file as UTF-8
+ let fstream = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(
+ Ci.nsIFileInputStream
+ );
+
+ fstream.init(file, -1, 0, 0);
+
+ // Read the file
+ let available = fstream.available();
+ let data =
+ available > 0 ? NetUtil.readInputStreamToString(fstream, available) : "";
+ fstream.close();
+
+ response.write(data);
+}