summaryrefslogtreecommitdiffstats
path: root/dom/tests/browser/browser_largeAllocation_non_win32.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/tests/browser/browser_largeAllocation_non_win32.js')
-rw-r--r--dom/tests/browser/browser_largeAllocation_non_win32.js43
1 files changed, 43 insertions, 0 deletions
diff --git a/dom/tests/browser/browser_largeAllocation_non_win32.js b/dom/tests/browser/browser_largeAllocation_non_win32.js
new file mode 100644
index 0000000000..bc3f13ec89
--- /dev/null
+++ b/dom/tests/browser/browser_largeAllocation_non_win32.js
@@ -0,0 +1,43 @@
+let testDir = gTestPath.substr(0, gTestPath.lastIndexOf("/"));
+/* import-globals-from helper_largeAllocation.js */
+Services.scriptloader.loadSubScript(
+ testDir + "/helper_largeAllocation.js",
+ this
+);
+
+// Force-enabling the Large-Allocation header
+add_task(async function() {
+ info("Test 1 - force enabling the Large-Allocation header");
+ await SpecialPowers.pushPrefEnv({
+ set: [
+ // Enable the header if it is disabled
+ ["dom.largeAllocationHeader.enabled", true],
+ // Force-enable process creation with large-allocation, such that non
+ // win32 builds can test the behavior.
+ ["dom.largeAllocation.forceEnable", true],
+ // Increase processCount.webLargeAllocation to avoid any races where
+ // processes aren't being cleaned up quickly enough.
+ ["dom.ipc.processCount.webLargeAllocation", 20],
+ ],
+ });
+
+ await largeAllocSuccessTests();
+});
+
+add_task(async function() {
+ info("Test 2 - not force enabling the Large-Allocation header");
+ await SpecialPowers.pushPrefEnv({
+ set: [
+ // Enable the header if it is disabled
+ ["dom.largeAllocationHeader.enabled", true],
+ // Force-enable process creation with large-allocation, such that non
+ // win32 builds can test the behavior.
+ ["dom.largeAllocation.forceEnable", false],
+ // Increase processCount.webLargeAllocation to avoid any races where
+ // processes aren't being cleaned up quickly enough.
+ ["dom.ipc.processCount.webLargeAllocation", 20],
+ ],
+ });
+
+ await largeAllocFailTests();
+});