tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

browser_grids_highlighter-toggle-telemetry.js (1783B)


      1 /* Any copyright is dedicated to the Public Domain.
      2 http://creativecommons.org/publicdomain/zero/1.0/ */
      3 
      4 "use strict";
      5 
      6 // Test that the telemetry count is correct when the grid highlighter is activated from
      7 // the layout view.
      8 
      9 const TEST_URI = `
     10  <style type='text/css'>
     11    #grid {
     12      display: grid;
     13    }
     14  </style>
     15  <div id="grid">
     16    <div id="cell1">cell1</div>
     17    <div id="cell2">cell2</div>
     18  </div>
     19 `;
     20 
     21 add_task(async function () {
     22  await addTab("data:text/html;charset=utf-8," + encodeURIComponent(TEST_URI));
     23  startTelemetry();
     24  const { gridInspector, inspector } = await openLayoutView();
     25  const { document: doc } = gridInspector;
     26  const { highlighters, store } = inspector;
     27 
     28  await selectNode("#grid", inspector);
     29  const gridList = doc.getElementById("grid-list");
     30  const checkbox = gridList.children[0].querySelector("input");
     31 
     32  info("Toggling ON the CSS grid highlighter from the layout panel.");
     33  const onHighlighterShown = highlighters.once("grid-highlighter-shown");
     34  let onCheckboxChange = waitUntilState(
     35    store,
     36    state => state.grids.length == 1 && state.grids[0].highlighted
     37  );
     38  checkbox.click();
     39  await onHighlighterShown;
     40  await onCheckboxChange;
     41 
     42  info("Toggling OFF the CSS grid highlighter from the layout panel.");
     43  const onHighlighterHidden = highlighters.once("grid-highlighter-hidden");
     44  onCheckboxChange = waitUntilState(
     45    store,
     46    state => state.grids.length == 1 && !state.grids[0].highlighted
     47  );
     48  checkbox.click();
     49  await onHighlighterHidden;
     50  await onCheckboxChange;
     51 
     52  checkResults();
     53 });
     54 
     55 function checkResults() {
     56  checkTelemetry("devtools.grid.gridinspector.opened", "", 1, "scalar");
     57  checkTelemetry(
     58    "DEVTOOLS_GRID_HIGHLIGHTER_TIME_ACTIVE_SECONDS",
     59    "",
     60    null,
     61    "hasentries"
     62  );
     63 }