1
0
Fork 0
firefox/js/xpconnect/tests/unit/head_ongc.js
Daniel Baumann 5e9a113729
Adding upstream version 140.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-25 09:37:52 +02:00

35 lines
1 KiB
JavaScript

var {addDebuggerToGlobal, addSandboxedDebuggerToGlobal} = ChromeUtils.importESModule("resource://gre/modules/jsdebugger.sys.mjs");
const testingFunctions = Cu.getJSTestingFunctions();
const systemPrincipal = Cc["@mozilla.org/systemprincipal;1"].createInstance(Ci.nsIPrincipal);
function addTestingFunctionsToGlobal(global) {
for (let k in testingFunctions) {
global[k] = testingFunctions[k];
}
global.print = info;
global.newGlobal = newGlobal;
addDebuggerToGlobal(global);
}
function newGlobal() {
const global = new Cu.Sandbox(systemPrincipal, { freshZone: true });
addTestingFunctionsToGlobal(global);
return global;
}
addTestingFunctionsToGlobal(this);
function executeSoon(f) {
Services.tm.dispatchToMainThread({ run: f });
}
// The onGarbageCollection tests don't play well gczeal settings and lead to
// intermittents.
if (typeof gczeal == "function") {
gczeal(0);
}
// Make sure to GC before we start the test, so that no zones are scheduled for
// GC before we start testing onGarbageCollection hooks.
gc();