Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/accessible/tests/browser/mac/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 2 kB image not shown  

Quelle  browser_menulist.js   Sprache: JAVA

 
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */


"use strict";

/* import-globals-from ../../mochitest/attributes.js */
/* import-globals-from ../../mochitest/role.js */
/* import-globals-from ../../mochitest/states.js */
loadScripts(
  { name: "role.js", dir: MOCHITESTS_DIR },
  { name: "states.js", dir: MOCHITESTS_DIR },
  { name: "attributes.js", dir: MOCHITESTS_DIR }
);

addAccessibleTask(
  "mac/doc_menulist.xhtml",
  async (browser, accDoc) => {
    const menulist = getNativeInterface(accDoc, "defaultZoom");

    let actions = menulist.actionNames;
    ok(actions.includes("AXPress"), "menu has press action");

    let event = waitForMacEvent("AXMenuOpened");
    menulist.performAction("AXPress");
    const menupopup = await event;

    const menuItems = menupopup.getAttributeValue("AXChildren");
    is(menuItems.length, 4, "Found four children in menulist");
    is(
      menuItems[0].getAttributeValue("AXTitle"),
      "50%",
      "First item has correct title"
    );
    is(
      menuItems[1].getAttributeValue("AXTitle"),
      "100%",
      "Second item has correct title"
    );
    is(
      menuItems[2].getAttributeValue("AXTitle"),
      "150%",
      "Third item has correct title"
    );
    is(
      menuItems[3].getAttributeValue("AXTitle"),
      "200%",
      "Fourth item has correct title"
    );
  },
  { topLevel: false, chrome: true }
);

addAccessibleTask(
  "mac/doc_menulist.xhtml",
  async (browser, accDoc) => {
    const menulist = getNativeInterface(accDoc, "defaultZoom");

    const actions = menulist.actionNames;
    ok(actions.includes("AXPress"), "menu has press action");
    let event = waitForMacEvent("AXMenuOpened");
    menulist.performAction("AXPress");
    await event;

    const menu = menulist.getAttributeValue("AXChildren")[0];
    ok(menu, "Menulist contains menu");
    const children = menu.getAttributeValue("AXChildren");
    is(children.length, 4, "Menu has 4 items");

    // Menu is open, initial focus should land on the first item
    is(
      children[0].getAttributeValue("AXSelected"),
      1,
      "First menu item is selected"
    );
    // focus the second item, and verify it is selected
    event = waitForMacEvent("AXFocusedUIElementChanged", iface => {
      try {
        return iface.getAttributeValue("AXTitle") == "100%";
      } catch (e) {
        return false;
      }
    });
    EventUtils.synthesizeKey("KEY_ArrowDown");
    await event;

    is(
      children[0].getAttributeValue("AXSelected"),
      0,
      "First menu item is no longer selected"
    );
    is(
      children[1].getAttributeValue("AXSelected"),
      1,
      "Second menu item is selected"
    );
    // press the second item, check for selected event
    event = waitForMacEvent("AXMenuItemSelected");
    children[1].performAction("AXPress");
    await event;
  },
  { topLevel: false, chrome: true }
);

Messung V0.5
C=91 H=97 G=93

¤ Dauer der Verarbeitung: 0.16 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.