diff options
Diffstat (limited to '')
-rw-r--r-- | devtools/shared/heapsnapshot/tests/xpcshell/test_HeapSnapshot_takeCensus_05.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/devtools/shared/heapsnapshot/tests/xpcshell/test_HeapSnapshot_takeCensus_05.js b/devtools/shared/heapsnapshot/tests/xpcshell/test_HeapSnapshot_takeCensus_05.js new file mode 100644 index 0000000000..22c5324c68 --- /dev/null +++ b/devtools/shared/heapsnapshot/tests/xpcshell/test_HeapSnapshot_takeCensus_05.js @@ -0,0 +1,31 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +// 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(); +} |