Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Errors
- This test gets skipped with pattern: http3 OR http2
- This test failed 20 times in the preceding 30 days. quicksearch this test
- Manifest: devtools/client/netmonitor/test/browser.toml
/* Any copyright is dedicated to the Public Domain.
"use strict";
/**
* Test if the correct filtering predicates are used when filtering from
* the performance analysis view.
*/
add_task(async function () {
const { monitor } = await initNetMonitor(FILTERING_URL, { requestCount: 1 });
info("Starting test... ");
const panel = monitor.panelWin;
const { document, store, windowRequire, connector } = panel;
const Actions = windowRequire("devtools/client/netmonitor/src/actions/index");
EventUtils.sendMouseEvent(
{ type: "click" },
document.querySelector(".requests-list-filter-html-button")
);
EventUtils.sendMouseEvent(
{ type: "click" },
document.querySelector(".requests-list-filter-css-button")
);
EventUtils.sendMouseEvent(
{ type: "click" },
document.querySelector(".requests-list-filter-js-button")
);
EventUtils.sendMouseEvent(
{ type: "click" },
document.querySelector(".requests-list-filter-ws-button")
);
EventUtils.sendMouseEvent(
{ type: "click" },
document.querySelector(".requests-list-filter-other-button")
);
testFilterButtonsCustom(monitor, [0, 1, 1, 1, 0, 0, 0, 0, 1, 1]);
info(
"The correct filtering predicates are used before entering perf. analysis mode."
);
store.dispatch(Actions.openStatistics(connector, true));
ok(
document.querySelector(".statistics-panel"),
"The main panel is switched to the statistics panel."
);
await waitUntil(
() =>
document.querySelectorAll(".pie-chart-container:not([placeholder=true])")
.length == 2
);
ok(true, "Two real pie charts appear to be rendered correctly.");
EventUtils.sendMouseEvent(
{ type: "click" },
document.querySelector(".pie-chart-slice-container")
);
ok(
document.querySelector(".monitor-panel"),
"The main panel is switched back to the monitor panel."
);
testFilterButtons(monitor, "html");
info(
"The correct filtering predicate is used when exiting perf. analysis mode."
);
await teardown(monitor);
});