gecko-dev/js/xpconnect/tests/unit/test_onGarbageCollection-03.js
Nick Fitzgerald a97c81d4d8 Bug 1150253 - Part 3: Migrate onGarbageCollection tests; r=sfink
--HG--
rename : js/src/jit-test/tests/debug/Memory-onGarbageCollection-04.js => js/xpconnect/tests/unit/test_onGarbageCollection-04.js
2015-04-22 09:43:02 -07:00

36 lines
602 B
JavaScript

// Test that the onGarbageCollection hook is not reentrant.
function run_test() {
do_test_pending();
const root = newGlobal();
const dbg = new Debugger();
const wrappedRoot = dbg.addDebuggee(root)
let fired = true;
let depth = 0;
dbg.memory.onGarbageCollection = _ => {
fired = true;
equal(depth, 0);
depth++;
try {
root.eval(`gc()`);
} finally {
equal(depth, 1);
depth--;
}
}
root.eval(`gc()`);
executeSoon(() => {
ok(fired);
equal(depth, 0);
dbg.memory.onGarbageCollection = undefined;
do_test_finished();
});
}