Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Warnings
- This test gets skipped with pattern: os == 'android'
- Manifest: devtools/shared/heapsnapshot/tests/xpcshell/xpcshell.toml
/* Any copyright is dedicated to the Public Domain.
// Test that HeapSnapshot.prototype.takeCensus finds cross compartment
// wrapper GC roots.
//
// Ported from js/src/jit-test/tests/debug/Memory-takeCensus-05.js
/* eslint-disable strict */
function run_test() {
const g = newGlobal();
const dbg = new Debugger(g);
equal(
"AllocationMarker" in saveHeapSnapshotAndTakeCensus(dbg).objects,
false,
"No allocation markers should exist in the census."
);
this.ccw = g.allocationMarker();
const census = saveHeapSnapshotAndTakeCensus(dbg);
equal(
census.objects.AllocationMarker.count,
1,
"Should have one allocation marker in the census, because there " +
"is one cross-compartment wrapper referring to it."
);
do_test_finished();
}