diff options
Diffstat (limited to 'dom/tests/browser/browser_largeAllocation_non_win32.js')
-rw-r--r-- | dom/tests/browser/browser_largeAllocation_non_win32.js | 43 |
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(); +}); |