tor-browser

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

browser_markup_subgrid_display_badge.js (2409B)


      1 /* Any copyright is dedicated to the Public Domain.
      2 http://creativecommons.org/publicdomain/zero/1.0/ */
      3 
      4 "use strict";
      5 
      6 const TEST_URL = URL_ROOT + "doc_markup_subgrid.html";
      7 
      8 add_task(async function () {
      9  const { inspector } = await openInspectorForURL(TEST_URL);
     10  const { highlighters, store } = inspector;
     11 
     12  info("Check the subgrid display badge is shown and not active.");
     13  await selectNode("main", inspector);
     14  const eltContainer = await getContainerForSelector("main", inspector);
     15  const subgridDisplayBadge = eltContainer.elt.querySelector(
     16    ".inspector-badge.interactive[data-display]"
     17  );
     18  ok(
     19    !subgridDisplayBadge.classList.contains("active"),
     20    "subgrid display badge is not active."
     21  );
     22  ok(
     23    subgridDisplayBadge.classList.contains("interactive"),
     24    "subgrid display badge is interactive."
     25  );
     26 
     27  info("Check the initial state of the grid highlighter.");
     28  ok(
     29    !highlighters.gridHighlighters.size,
     30    "No CSS grid highlighter exists in the highlighters overlay."
     31  );
     32 
     33  info("Toggling ON the CSS grid highlighter from the subgrid display badge.");
     34  const onHighlighterShown = highlighters.once("grid-highlighter-shown");
     35  let onCheckboxChange = waitUntilState(
     36    store,
     37    state => state.grids.length === 2 && state.grids[1].highlighted
     38  );
     39  subgridDisplayBadge.click();
     40  await onHighlighterShown;
     41  await onCheckboxChange;
     42 
     43  info(
     44    "Check that the CSS grid highlighter is created and the display badge state."
     45  );
     46  is(
     47    highlighters.gridHighlighters.size,
     48    1,
     49    "CSS grid highlighter is created in the highlighters overlay."
     50  );
     51  ok(
     52    subgridDisplayBadge.classList.contains("active"),
     53    "subgrid display badge is active."
     54  );
     55  ok(
     56    subgridDisplayBadge.classList.contains("interactive"),
     57    "subgrid display badge is interactive."
     58  );
     59 
     60  info("Toggling OFF the CSS grid highlighter from the subgrid display badge.");
     61  const onHighlighterHidden = highlighters.once("grid-highlighter-hidden");
     62  onCheckboxChange = waitUntilState(
     63    store,
     64    state => state.grids.length == 2 && !state.grids[1].highlighted
     65  );
     66  subgridDisplayBadge.click();
     67  await onHighlighterHidden;
     68  await onCheckboxChange;
     69 
     70  ok(
     71    !subgridDisplayBadge.classList.contains("active"),
     72    "subgrid display badge is not active."
     73  );
     74  ok(
     75    subgridDisplayBadge.classList.contains("interactive"),
     76    "subgrid display badge is interactive."
     77  );
     78 });