mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-22 01:35:35 +00:00
30b2b7ce44
For simple rules like function spacing, we can auto-fix these across the code base so they are followed in a consistent way. To generate this patch, I ran: ./mach eslint devtools --no-ignore --fix After this, I reverted any changes to third party files that we really do want to ignore. MozReview-Commit-ID: 6Q8BApkAW20
37 lines
1.4 KiB
JavaScript
37 lines
1.4 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
"use strict";
|
|
|
|
/**
|
|
* Tests if the profiler's tree view implementation works properly and
|
|
* can toggle categories hidden or visible.
|
|
*/
|
|
|
|
const { ThreadNode } = require("devtools/client/performance/modules/logic/tree-model");
|
|
const { CallView } = require("devtools/client/performance/modules/widgets/tree-view");
|
|
const { synthesizeProfile } = require("devtools/client/performance/test/helpers/synth-utils");
|
|
|
|
add_task(function () {
|
|
let profile = synthesizeProfile();
|
|
let threadNode = new ThreadNode(profile.threads[0], { startTime: 0, endTime: 20 });
|
|
|
|
// Don't display the synthesized (root) and the real (root) node twice.
|
|
threadNode.calls = threadNode.calls[0].calls;
|
|
|
|
let treeRoot = new CallView({ frame: threadNode });
|
|
let container = document.createElement("vbox");
|
|
treeRoot.attachTo(container);
|
|
|
|
let categories = container.querySelectorAll(".call-tree-category");
|
|
is(categories.length, 6,
|
|
"The call tree displays a correct number of categories.");
|
|
ok(!container.hasAttribute("categories-hidden"),
|
|
"All categories should be visible in the tree.");
|
|
|
|
treeRoot.toggleCategories(false);
|
|
is(categories.length, 6,
|
|
"The call tree displays the same number of categories.");
|
|
ok(container.hasAttribute("categories-hidden"),
|
|
"All categories should now be hidden in the tree.");
|
|
});
|