summaryrefslogtreecommitdiffstats
path: root/devtools/shared/heapsnapshot/tests/xpcshell/test_census_diff_05.js
blob: 1ce0cfeb5bd4cf2cd86b34a1bb53d2dc91095ceb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */
"use strict";

// Test diffing census reports of breakdown by "allocationStack".

const BREAKDOWN = {
  by: "allocationStack",
  then: { by: "count", count: true, bytes: true },
  noStack: { by: "count", count: true, bytes: true },
};

const stack1 = saveStack();
const stack2 = saveStack();
const stack3 = saveStack();

const REPORT1 = new Map([
  [stack1, { count: 10, bytes: 100 }],
  [stack2, { count: 1, bytes: 10 }],
]);

const REPORT2 = new Map([
  [stack2, { count: 10, bytes: 100 }],
  [stack3, { count: 1, bytes: 10 }],
]);

const EXPECTED = new Map([
  [stack1, { count: -10, bytes: -100 }],
  [stack2, { count: 9, bytes: 90 }],
  [stack3, { count: 1, bytes: 10 }],
]);

function run_test() {
  assertDiff(BREAKDOWN, REPORT1, REPORT2, EXPECTED);
}