mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-23 17:07:31 +09:00
Reclassify heapsnapshot and nsJSInspector as not part of devtools
This resolves Issue #316
This commit is contained in:
parent
28e0b0cd57
commit
95d5dcd8c5
142 changed files with 19 additions and 15 deletions
|
|
@ -1,89 +0,0 @@
|
|||
/* Any copyright is dedicated to the Public Domain.
|
||||
http://creativecommons.org/publicdomain/zero/1.0/ */
|
||||
|
||||
// Test that the HeapAnalyses{Client,Worker} can get census individuals.
|
||||
|
||||
function run_test() {
|
||||
run_next_test();
|
||||
}
|
||||
|
||||
const COUNT = { by: "count", count: true, bytes: true };
|
||||
|
||||
const CENSUS_BREAKDOWN = {
|
||||
by: "coarseType",
|
||||
objects: COUNT,
|
||||
strings: COUNT,
|
||||
scripts: COUNT,
|
||||
other: COUNT,
|
||||
};
|
||||
|
||||
const LABEL_BREAKDOWN = {
|
||||
by: "internalType",
|
||||
then: COUNT,
|
||||
};
|
||||
|
||||
const MAX_INDIVIDUALS = 10;
|
||||
|
||||
add_task(function* () {
|
||||
const client = new HeapAnalysesClient();
|
||||
|
||||
const snapshotFilePath = saveNewHeapSnapshot();
|
||||
yield client.readHeapSnapshot(snapshotFilePath);
|
||||
ok(true, "Should have read the heap snapshot");
|
||||
|
||||
const dominatorTreeId = yield client.computeDominatorTree(snapshotFilePath);
|
||||
ok(true, "Should have computed dominator tree");
|
||||
|
||||
const { report } = yield client.takeCensus(snapshotFilePath,
|
||||
{ breakdown: CENSUS_BREAKDOWN },
|
||||
{ asTreeNode: true });
|
||||
ok(report, "Should get a report");
|
||||
|
||||
let nodesWithLeafIndicesFound = 0;
|
||||
|
||||
yield* (function* assertCanGetIndividuals(censusNode) {
|
||||
if (censusNode.reportLeafIndex !== undefined) {
|
||||
nodesWithLeafIndicesFound++;
|
||||
|
||||
const response = yield client.getCensusIndividuals({
|
||||
dominatorTreeId,
|
||||
indices: DevToolsUtils.isSet(censusNode.reportLeafIndex)
|
||||
? censusNode.reportLeafIndex
|
||||
: new Set([censusNode.reportLeafIndex]),
|
||||
censusBreakdown: CENSUS_BREAKDOWN,
|
||||
labelBreakdown: LABEL_BREAKDOWN,
|
||||
maxRetainingPaths: 1,
|
||||
maxIndividuals: MAX_INDIVIDUALS,
|
||||
});
|
||||
|
||||
dumpn(`response = ${JSON.stringify(response, null, 4)}`);
|
||||
|
||||
equal(response.nodes.length, Math.min(MAX_INDIVIDUALS, censusNode.count),
|
||||
"response.nodes.length === Math.min(MAX_INDIVIDUALS, censusNode.count)");
|
||||
|
||||
let lastRetainedSize = Infinity;
|
||||
for (let individual of response.nodes) {
|
||||
equal(typeof individual.nodeId, "number",
|
||||
"individual.nodeId should be a number");
|
||||
ok(individual.retainedSize <= lastRetainedSize,
|
||||
"individual.retainedSize <= lastRetainedSize");
|
||||
lastRetainedSize = individual.retainedSize;
|
||||
ok(individual.shallowSize, "individual.shallowSize should exist and be non-zero");
|
||||
ok(individual.shortestPaths, "individual.shortestPaths should exist");
|
||||
ok(individual.shortestPaths.nodes, "individual.shortestPaths.nodes should exist");
|
||||
ok(individual.shortestPaths.edges, "individual.shortestPaths.edges should exist");
|
||||
ok(individual.label, "individual.label should exist");
|
||||
}
|
||||
}
|
||||
|
||||
if (censusNode.children) {
|
||||
for (let child of censusNode.children) {
|
||||
yield* assertCanGetIndividuals(child);
|
||||
}
|
||||
}
|
||||
}(report));
|
||||
|
||||
equal(nodesWithLeafIndicesFound, 4, "Should have found a leaf for each coarse type");
|
||||
|
||||
client.destroy();
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue