tor-browser

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

browser_accessibility_context_menu_browser.js (2115B)


      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_URI = '<h1 id="h1">header</h1><p id="p">paragraph</p>';
      7 
      8 addA11YPanelTask(
      9  "Test show accessibility properties context menu in browser.",
     10  TEST_URI,
     11  async function ({ panel, toolbox, browser }) {
     12    // Load the inspector to ensure it to use in this test.
     13    await toolbox.loadTool("inspector");
     14 
     15    const headerSelector = "#h1";
     16 
     17    const contextMenu = document.getElementById("contentAreaContextMenu");
     18    const awaitPopupShown = BrowserTestUtils.waitForEvent(
     19      contextMenu,
     20      "popupshown"
     21    );
     22    await BrowserTestUtils.synthesizeMouse(
     23      headerSelector,
     24      0,
     25      0,
     26      {
     27        type: "contextmenu",
     28        button: 2,
     29        centered: true,
     30      },
     31      browser
     32    );
     33    await awaitPopupShown;
     34 
     35    const inspectA11YPropsItem = contextMenu.querySelector(
     36      "#context-inspect-a11y"
     37    );
     38 
     39    info(
     40      "Triggering 'Inspect Accessibility Properties' and waiting for " +
     41        "accessibility panel to open"
     42    );
     43    const popupHidden = BrowserTestUtils.waitForEvent(
     44      contextMenu,
     45      "popuphidden"
     46    );
     47    contextMenu.activateItem(inspectA11YPropsItem);
     48    await popupHidden;
     49 
     50    const selected = await panel.once("new-accessible-front-selected");
     51    const expectedSelectedNode = await getNodeFront(
     52      headerSelector,
     53      toolbox.getPanel("inspector")
     54    );
     55    const expectedSelected =
     56      await panel.accessibilityProxy.accessibilityFront.accessibleWalkerFront.getAccessibleFor(
     57        expectedSelectedNode
     58      );
     59    is(
     60      toolbox.getCurrentPanel(),
     61      panel,
     62      "Accessibility panel is currently selected"
     63    );
     64    is(selected, expectedSelected, "Accessible front selected correctly");
     65 
     66    const doc = panel.panelWin.document;
     67    const propertiesTree = doc.querySelector(".tree");
     68    is(doc.activeElement, propertiesTree, "Properties list must be focused.");
     69    ok(
     70      isVisible(doc.querySelector(".treeTable .treeRow.selected")),
     71      "Selected row is visible."
     72    );
     73  }
     74 );