From d183801ba254abb859fe5aeb59f3ca05fc5d2a20 Mon Sep 17 00:00:00 2001 From: Peter Varga Date: Fri, 6 Mar 2020 15:05:50 +0100 Subject: Update accessibility roles and test after 79-based Change-Id: I23bd548db07c6332170e9d304977e5974c7f049f Reviewed-by: Allan Sandfeld Jensen --- .../widgets/accessibility/tst_accessibility.cpp | 307 ++++++++++++--------- 1 file changed, 183 insertions(+), 124 deletions(-) (limited to 'tests/auto') diff --git a/tests/auto/widgets/accessibility/tst_accessibility.cpp b/tests/auto/widgets/accessibility/tst_accessibility.cpp index 98f15e684..9ec9e6a5b 100644 --- a/tests/auto/widgets/accessibility/tst_accessibility.cpp +++ b/tests/auto/widgets/accessibility/tst_accessibility.cpp @@ -336,130 +336,189 @@ void tst_Accessibility::roles_data() QTest::addColumn("nested"); QTest::addColumn("role"); - QTest::newRow("AX_ROLE_ABBR") << QString("a") << 1 << QAccessible::StaticText; - QTest::newRow("AX_ROLE_ALERT") << QString("
alert
") << 0 << QAccessible::AlertMessage; - QTest::newRow("AX_ROLE_ALERT_DIALOG") << QString("
alert
") << 0 << QAccessible::AlertMessage; - QTest::newRow("AX_ROLE_ANCHOR") << QString("Chapter a") << 1 << QAccessible::Link; - QTest::newRow("AX_ROLE_ANNOTATION") << QString("a") << 1 << QAccessible::StaticText; - QTest::newRow("AX_ROLE_APPLICATION") << QString("
landmark
") << 0 << QAccessible::Document; - QTest::newRow("AX_ROLE_ARTICLE") << QString("
a
") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_AUDIO") << QString("") << 1 << QAccessible::Sound; - QTest::newRow("AX_ROLE_BANNER") << QString("
a
") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_BLOCKQUOTE") << QString("
a
") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_BUTTON") << QString("") << 1 << QAccessible::Button; - //QTest::newRow("AX_ROLE_BUTTON_DROP_DOWN"); // TODO: Remove this during the next Chromium update: https://chromium-review.googlesource.com/842475 - //QTest::newRow("AX_ROLE_CANVAS") << QString("") << 0 << QAccessible::Canvas; // FIXME: The test case might be wrong (see AXLayoutObject.cpp) - QTest::newRow("AX_ROLE_CAPTION") << QString("
a
") << 1 << QAccessible::Heading; - //QTest::newRow("AX_ROLE_CARET"); // Not a blink accessibility role - QTest::newRow("AX_ROLE_CELL") << QString("
a
") << 2 << QAccessible::Cell; - QTest::newRow("AX_ROLE_CHECK_BOX") << QString("a") << 1 << QAccessible::CheckBox; - QTest::newRow("AX_ROLE_CLIENT") << QString("") << 0 << QAccessible::Client; - QTest::newRow("AX_ROLE_COLOR_WELL") << QString("a") << 1 << QAccessible::ColorChooser; - //QTest::newRow("AX_ROLE_COLUMN") << QString("") << 0 << QAccessible::Column; // FIXME: The test case might be wrong (see AXTableColumn.h) - QTest::newRow("AX_ROLE_COLUMN_HEADER") << QString("
a
a
a
") << 2 << QAccessible::ColumnHeader; - QTest::newRow("AX_ROLE_COMBO_BOX_GROUPING") << QString("
") << 0 << QAccessible::ComboBox; - QTest::newRow("AX_ROLE_COMBO_BOX_MENU_BUTTON") << QString("
Select
") << 0 << QAccessible::ComboBox; - QTest::newRow("AX_ROLE_TEXT_FIELD_WITH_COMBO_BOX") << QString("") << 1 << QAccessible::ComboBox; - QTest::newRow("AX_ROLE_COMPLEMENTARY") << QString("") << 0 << QAccessible::ComplementaryContent; - QTest::newRow("AX_ROLE_CONTENT_INFO") << QString("
a
") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_DATE") << QString("") << 1 << QAccessible::Clock; - QTest::newRow("AX_ROLE_DATE_TIME") << QString("") << 1 << QAccessible::Clock; - QTest::newRow("AX_ROLE_DEFINITION") << QString("
landmark
") << 0 << QAccessible::Paragraph; - QTest::newRow("AX_ROLE_DESCRIPTION_LIST") << QString("
a
") << 0 << QAccessible::List; - QTest::newRow("AX_ROLE_DESCRIPTION_LIST_DETAIL") << QString("
a
") << 0 << QAccessible::Paragraph; - QTest::newRow("AX_ROLE_DESCRIPTION_LIST_TERM") << QString("
a
") << 0 << QAccessible::ListItem; - QTest::newRow("AX_ROLE_DETAILS") << QString("
a
") << 0 << QAccessible::Grouping; - //QTest::newRow("AX_ROLE_DESKTOP"); // Not a blink accessibility role - QTest::newRow("AX_ROLE_DIALOG") << QString("
") << 0 << QAccessible::Dialog; - //QTest::newRow("AX_ROLE_DIRECTORY") << QString("
") << 0 << QAccessible::NoRole; // FIXME: Aria role 'directory' should work - QTest::newRow("AX_ROLE_DISCLOSURE_TRIANGLE") << QString("
a
") << 1 << QAccessible::NoRole; - QTest::newRow("AX_ROLE_GENERIC_CONTAINER") << QString("
a
") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_DOCUMENT") << QString("
a
") << 0 << QAccessible::Document; - QTest::newRow("AX_ROLE_EMBEDDED_OBJECT") << QString("") << 1 << QAccessible::Grouping; - QTest::newRow("AX_ROLE_FEED") << QString("
a
") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_FIGCAPTION") << QString("
a
") << 0 << QAccessible::Heading; - QTest::newRow("AX_ROLE_FIGURE") << QString("
a
") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_FOOTER") << QString("
a
") << 0 << QAccessible::Footer; - QTest::newRow("AX_ROLE_FORM") << QString("
") << 0 << QAccessible::Form; - QTest::newRow("AX_ROLE_GRID") << QString("
") << 0 << QAccessible::Table; - QTest::newRow("AX_ROLE_GROUP") << QString("
") << 0 << QAccessible::Grouping; - QTest::newRow("AX_ROLE_HEADER)") << QString("
a
") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_HEADING") << QString("

a

") << 0 << QAccessible::Heading; - QTest::newRow("AX_ROLE_IFRAME") << QString("") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_IFRAME_PRESENTATIONAL") << QString("") << 1 << QAccessible::NoRole; - //QTest::newRow("AX_ROLE_IGNORED") << QString("a") << 0 << QAccessible::NoRole; // FIXME: The HTML element should not be exposed as an element (see AXNodeObject.cpp) - QTest::newRow("AX_ROLE_IMAGE") << QString("") << 1 << QAccessible::Graphic; - //QTest::newRow("AX_ROLE_IMAGE_MAP") << QString("a") << 0 << QAccessible::Graphic; // FIXME: The test case might be wrong (see AXLayoutObject.cpp) - QTest::newRow("AX_ROLE_INLINE_TEXT_BOX") << QString("") << 1 << QAccessible::EditableText; - QTest::newRow("AX_ROLE_INPUT_TIME") << QString("") << 1 << QAccessible::SpinBox; - QTest::newRow("AX_ROLE_LABEL_TEXT") << QString("") << 1 << QAccessible::StaticText; - QTest::newRow("AX_ROLE_LEGEND") << QString("a") << 0 << QAccessible::StaticText; - QTest::newRow("AX_ROLE_LINE_BREAK") << QString("
") << 1 << QAccessible::Separator; - QTest::newRow("AX_ROLE_LINK") << QString("link") << 1 << QAccessible::Link; - QTest::newRow("AX_ROLE_LIST") << QString("
    ") << 0 << QAccessible::List; - QTest::newRow("AX_ROLE_LIST_BOX") << QString("") << 1 << QAccessible::ComboBox; - QTest::newRow("AX_ROLE_LIST_BOX_OPTION") << QString("") << 0 << QAccessible::ListItem; - QTest::newRow("AX_ROLE_LIST_ITEM") << QString("
  • a
  • ") << 0 << QAccessible::ListItem; - QTest::newRow("AX_ROLE_LIST_MARKER") << QString("
    • ") << 1 << QAccessible::StaticText; - //QTest::newRow("AX_ROLE_LOCATION_BAR"); // Not a blink accessibility role - QTest::newRow("AX_ROLE_LOG") << QString("
      a
      ") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_MAIN") << QString("
      a
      ") << 0 << QAccessible::Grouping; - QTest::newRow("AX_ROLE_MARK") << QString("a") << 1 << QAccessible::StaticText; - QTest::newRow("AX_ROLE_MARQUEE") << QString("
      a
      ") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_MATH") << QString("a") << 1 << QAccessible::Equation; - QTest::newRow("AX_ROLE_MENU") << QString("
      a
      ") << 0 << QAccessible::PopupMenu; - QTest::newRow("AX_ROLE_MENU_BAR") << QString("
      a
      ") << 0 << QAccessible::MenuBar; - QTest::newRow("AX_ROLE_MENU_ITEM") << QString("") << 1 << QAccessible::MenuItem; - QTest::newRow("AX_ROLE_MENU_ITEM_CHECK_BOX") << QString("") << 1 << QAccessible::CheckBox; - QTest::newRow("AX_ROLE_MENU_ITEM_RADIO") << QString("") << 1 << QAccessible::RadioButton; - QTest::newRow("AX_ROLE_MENU_BUTTON") << QString("
      a
      ") << 1 << QAccessible::MenuItem; - //QTest::newRow("AX_ROLE_MENU_LIST_OPTION") << QString("") << false << QAccessible::MenuItem; // FIXME: ") << 1 << QAccessible::ComboBox; - QTest::newRow("AX_ROLE_PRE") << QString("
      a
      ") << 0 << QAccessible::Section; - //QTest::newRow("AX_ROLE_PRESENTATIONAL") << QString("
      a
      ") << 0 << QAccessible::NoRole; // FIXME: Aria role 'presentation' should work - QTest::newRow("AX_ROLE_PROGRESS_INDICATOR") << QString("
      ") << 0 << QAccessible::ProgressBar; - QTest::newRow("AX_ROLE_RADIO_BUTTON") << QString("") << 1 << QAccessible::RadioButton; - QTest::newRow("AX_ROLE_RADIO_GROUP") << QString("
      ") << 0 << QAccessible::Grouping; - QTest::newRow("AX_ROLE_REGION") << QString("
      a
      ") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_ROW") << QString("
      a
      ") << 1 << QAccessible::Row; - QTest::newRow("AX_ROLE_ROW_HEADER") << QString("
      ab
      ") << 2 << QAccessible::RowHeader; - QTest::newRow("AX_ROLE_RUBY") << QString("a") << 1 << QAccessible::StaticText; - QTest::newRow("AX_ROLE_SCROLL_BAR") << QString("
      a") << 0 << QAccessible::ScrollBar; - QTest::newRow("AX_ROLE_SEARCH") << QString("
      landmark
      ") << 0 << QAccessible::Section; - QTest::newRow("AX_ROLE_SEARCH_BOX") << QString("") << 1 << QAccessible::EditableText; - QTest::newRow("AX_ROLE_SLIDER") << QString("") << 1 << QAccessible::Slider; - //QTest::newRow("AX_ROLE_SLIDER_THUMB"); // No mapping to ARIA role - QTest::newRow("AX_ROLE_SPIN_BUTTON") << QString("") << 1 << QAccessible::SpinBox; - //QTest::newRow("AX_ROLE_SPIN_BUTTON_PART"); // No mapping to ARIA role - QTest::newRow("AX_ROLE_SPLITER") << QString("
      ") << 0 << QAccessible::Splitter; - QTest::newRow("AX_ROLE_STATIC_TEXT") << QString("a") << 1 << QAccessible::StaticText; - QTest::newRow("AX_ROLE_STATUS") << QString("a") << 1 << QAccessible::Indicator; - QTest::newRow("AX_ROLE_SVG_ROOT") << QString("") << 1 << QAccessible::Graphic; - QTest::newRow("AX_ROLE_SWITCH") << QString("") << 1 << QAccessible::Button; - QTest::newRow("AX_ROLE_TABLE") << QString("
      a
      ") << 0 << QAccessible::Table; - //QTest::newRow("AX_ROLE_TABLE_HEADER_CONTAINER"); // No mapping to ARIA role - QTest::newRow("AX_ROLE_TAB") << QString("
      a
      ") << 0 << QAccessible::PageTab; - QTest::newRow("AX_ROLE_TAB_LIST") << QString("
      a
      ") << 0 << QAccessible::PageTabList; - QTest::newRow("AX_ROLE_TAB_PANEL") << QString("
      a
      ") << 0 << QAccessible::Pane; - QTest::newRow("AX_ROLE_TERM") << QString("
      a
      ") << 0 << QAccessible::StaticText; - QTest::newRow("AX_ROLE_TEXT_FIELD") << QString("") << 1 << QAccessible::EditableText; - QTest::newRow("AX_ROLE_TIME") << QString("") << 1 << QAccessible::Clock; - QTest::newRow("AX_ROLE_TIMER") << QString("
      a
      ") << 0 << QAccessible::Clock; - //QTest::newRow("AX_ROLE_TITLE_BAR"); // Not a blink accessibility role - QTest::newRow("AX_ROLE_TOGGLE_BUTTON") << QString("") << 1 << QAccessible::Button; - QTest::newRow("AX_ROLE_TOOLBAR") << QString("
      a
      ") << 0 << QAccessible::ToolBar; - QTest::newRow("AX_ROLE_TOOLTIP") << QString("
      a
      ") << 0 << QAccessible::ToolTip; - QTest::newRow("AX_ROLE_TREE") << QString("
      a
      ") << 0 << QAccessible::Tree; - QTest::newRow("AX_ROLE_TREE_GRID") << QString("
      a
      ") << 0 << QAccessible::Tree; - QTest::newRow("AX_ROLE_TREE_ITEM") << QString("
      a
      ") << 0 << QAccessible::TreeItem; - QTest::newRow("AX_ROLE_VIDEO") << QString("") << 1 << QAccessible::Animation; - //QTest::newRow("AX_ROLE_WINDOW"); // No mapping to ARIA role + QTest::newRow("ax::mojom::Role::kAbbr") << QString("a") << 1 << QAccessible::StaticText; + QTest::newRow("ax::mojom::Role::KAlert") << QString("
      alert
      ") << 0 << QAccessible::AlertMessage; + QTest::newRow("ax::mojom::Role::kAlertDialog") << QString("
      alert
      ") << 0 << QAccessible::AlertMessage; + QTest::newRow("ax::mojom::Role::kAnchor") << QString("Chapter a") << 1 << QAccessible::Link; + + // REMINDER: annotation roles are removed from Chromium 80: https://chromium-review.googlesource.com/c/chromium/src/+/1907074 + //QTest::newRow("ax::mojom::Role::kAnnotationAttribution") << QString("
      ") << 0 << QAccessible::Section; // FIXME: Aria role 'annotation-attribution' should work + //QTest::newRow("ax::mojom::Role::kAnnotationCommentary") << QString("
      ") << 0 << QAccessible::Section; // FIXME: Aria role 'annotation-commentary' should work + //QTest::newRow("ax::mojom::Role::kAnnotationPresence") << QString("
      ") << 0 << QAccessible::Section; // FIXME: Aria role 'annotation-presence' should work + //QTest::newRow("ax::mojom::Role::kAnnotationRevision") << QString("
      ") << 0 << QAccessible::Section; // FIXME: Aria role 'annotation-revision' should work + //QTest::newRow("ax::mojom::Role::kAnnotationSuggestion") << QString("
      ") << 0 << QAccessible::Section; // FIXME: Aria role 'annotation-suggestion' should work + + QTest::newRow("ax::mojom::Role::kApplication") << QString("
      landmark
      ") << 0 << QAccessible::Document; + QTest::newRow("ax::mojom::Role::kArticle") << QString("
      a
      ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kAudio") << QString("") << 1 << QAccessible::Sound; + QTest::newRow("ax::mojom::Role::kBanner") << QString("
      a
      ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kBlockquote") << QString("
      a
      ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kButton") << QString("") << 1 << QAccessible::Button; + //QTest::newRow("ax::mojom::Role::kCanvas") << QString("") << 0 << QAccessible::Canvas; // FIXME: The test case might be wrong (see AXLayoutObject.cpp) + QTest::newRow("ax::mojom::Role::kCaption") << QString("
      a
      ") << 1 << QAccessible::Heading; + //QTest::newRow("ax::mojom::Role::kCaret"); // No mapping to ARIA role + QTest::newRow("ax::mojom::Role::kCell") << QString("
      a
      ") << 2 << QAccessible::Cell; + QTest::newRow("ax::mojom::Role::kCheckBox") << QString("a") << 1 << QAccessible::CheckBox; + QTest::newRow("ax::mojom::Role::kClient") << QString("") << 0 << QAccessible::Client; + QTest::newRow("ax::mojom::Role::kColorWell") << QString("a") << 1 << QAccessible::ColorChooser; + //QTest::newRow("ax::mojom::Role::kColumn") << QString("
      a
      ") << 0 << QAccessible::Column; // FIXME: The test case might be wrong (see AXTableColumn.h) + QTest::newRow("ax::mojom::Role::kColumnHeader") << QString("
      a
      a
      ") << 2 << QAccessible::ColumnHeader; + QTest::newRow("ax::mojom::Role::kComboBoxGrouping") << QString("
      ") << 0 << QAccessible::ComboBox; + QTest::newRow("ax::mojom::Role::kComboBoxMenuButton") << QString("
      Select
      ") << 0 << QAccessible::ComboBox; + QTest::newRow("ax::mojom::Role::kTextFieldWithComboBox") << QString("") << 1 << QAccessible::ComboBox; + QTest::newRow("ax::mojom::Role::kComplementary") << QString("") << 0 << QAccessible::ComplementaryContent; + QTest::newRow("ax::mojom::Role::kContentDeletion") << QString("
      ") << 0 << QAccessible::Grouping; + QTest::newRow("ax::mojom::Role::kContentInsertion") << QString("
      ") << 0 << QAccessible::Grouping; + QTest::newRow("ax::mojom::Role::kContentInfo") << QString("
      ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kData") << QString("") << 1 << QAccessible::Clock; + QTest::newRow("ax::mojom::Role::kDateTime") << QString("") << 1 << QAccessible::Clock; + QTest::newRow("ax::mojom::Role::kDefinition") << QString("
      landmark
      ") << 0 << QAccessible::Paragraph; + QTest::newRow("ax::mojom::Role::kDescriptionList") << QString("
      a
      ") << 0 << QAccessible::List; + QTest::newRow("ax::mojom::Role::kDescriptionListDetail") << QString("
      a
      ") << 0 << QAccessible::Paragraph; + QTest::newRow("ax::mojom::Role::kDescriptionListTerm") << QString("
      a
      ") << 0 << QAccessible::ListItem; + QTest::newRow("ax::mojom::Role::kDetails") << QString("
      a
      ") << 0 << QAccessible::Grouping; + //QTest::newRow("ax::mojom::Role::kDesktop"); // No mapping to ARIA role + QTest::newRow("ax::mojom::Role::kDialog") << QString("
      ") << 0 << QAccessible::Dialog; + //QTest::newRow("ax::mojom::Role::kDirectory") << QString("
        ") << 0 << QAccessible::List; // FIXME: Aria role 'directory' should work + QTest::newRow("ax::mojom::Role::kDisclosureTriangle") << QString("
        a
        ") << 1 << QAccessible::Button; + QTest::newRow("ax::mojom::Role::kGenericContainer") << QString("
        a
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocCover") << QString("
        ") << 0 << QAccessible::Graphic; + QTest::newRow("ax::mojom::Role::kDocBackLink") << QString("
        ") << 0 << QAccessible::Link; + QTest::newRow("ax::mojom::Role::kDocBiblioRef") << QString("
        ") << 0 << QAccessible::Link; + QTest::newRow("ax::mojom::Role::kDocGlossRef") << QString("
        ") << 0 << QAccessible::Link; + QTest::newRow("ax::mojom::Role::kDocNoteRef") << QString("
        ") << 0 << QAccessible::Link; + QTest::newRow("ax::mojom::Role::kDocBiblioEntry") << QString("
        ") << 0 << QAccessible::ListItem; + QTest::newRow("ax::mojom::Role::kDocEndnote") << QString("
        ") << 0 << QAccessible::ListItem; + QTest::newRow("ax::mojom::Role::kDocFootnote") << QString("
        ") << 0 << QAccessible::ListItem; + QTest::newRow("ax::mojom::Role::kDocPageBreak") << QString("
        ") << 0 << QAccessible::Separator; + QTest::newRow("ax::mojom::Role::kDocAbstract") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocAcknowledgements") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocAfterword") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocAppendix") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocBibliography") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocChapter") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocColophon") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocConclusion") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocCredit") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocCredits") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocDedication") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocEndnotes") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocEpigraph") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocEpilogue") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocErrata") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocExample") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocForeword") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocGlossary") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocIndex") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocIntroduction") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocNotice") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocPageList") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocPart") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocPreface") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocPrologue") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocPullquote") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocQna") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocSubtitle") << QString("
        ") << 0 << QAccessible::Heading; + QTest::newRow("ax::mojom::Role::kDocTip") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocToc") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kDocument") << QString("
        a
        ") << 0 << QAccessible::Document; + QTest::newRow("ax::mojom::Role::kEmbeddedObject") << QString("") << 1 << QAccessible::Grouping; + QTest::newRow("ax::mojom::Role::kFeed") << QString("
        a
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kFigcaption") << QString("
        a
        ") << 0 << QAccessible::Heading; + QTest::newRow("ax::mojom::Role::kFigure") << QString("
        a
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kFooter") << QString("
        a
        ") << 0 << QAccessible::Footer; + QTest::newRow("ax::mojom::Role::kFooterAsNonLandmark") << QString("
        a
        ") << 1 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kForm") << QString("
        ") << 0 << QAccessible::Form; + QTest::newRow("ax::mojom::Role::kGraphicsDocument") << QString("
        ") << 0 << QAccessible::Document; + QTest::newRow("ax::mojom::Role::kGraphicsObject") << QString("
        ") << 0 << QAccessible::Pane; + QTest::newRow("ax::mojom::Role::kGraphicsSymbol") << QString("
        ") << 0 << QAccessible::Graphic; + QTest::newRow("ax::mojom::Role::kGrid") << QString("
        ") << 0 << QAccessible::Table; + QTest::newRow("ax::mojom::Role::kGroup") << QString("
        ") << 0 << QAccessible::Grouping; + QTest::newRow("ax::mojom::Role::Header") << QString("
        a
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::HeaderAsNonLandMark") << QString("
        a
        ") << 1 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kHeading") << QString("

        a

        ") << 0 << QAccessible::Heading; + QTest::newRow("ax::mojom::Role::kIframe") << QString("") << 1 << QAccessible::WebDocument; + QTest::newRow("ax::mojom::Role::kIframePresentational") << QString("") << 1 << QAccessible::Grouping; + //QTest::newRow("ax::mojom::Role::kIgnored") << QString("a") << 0 << QAccessible::NoRole; // FIXME: The HTML element should not be exposed as an element (see AXNodeObject.cpp) + QTest::newRow("ax::mojom::Role::kImage") << QString("") << 1 << QAccessible::Graphic; + //QTest::newRow("ax::mojom::Role::kImageMap") << QString("") << 0 << QAccessible::Document; // FIXME: AXLayoutObject::DetermineAccessiblityRole returns kImageMap but something overrides it + //QTest::newRow("ax::mojom::Role::kInlineTextBox"); // No mapping to ARIA role + QTest::newRow("ax::mojom::Role::kInputTime") << QString("") << 1 << QAccessible::SpinBox; + //QTest::newRow("ax::mojom::Role::kKeyboard"); // No mapping to ARIA role + QTest::newRow("ax::mojom::Role::kLabelText") << QString("") << 1 << QAccessible::StaticText; + QTest::newRow("ax::mojom::Role::kLayoutTable") << QString("
        ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kLayoutTableCell") << QString("
        ") << 2 << QAccessible::Section; + //QTest::newRow("ax::mojom::Role::kLayoutTableColumn") << QString("
        ") << 1 << QAccessible::Section; // FIXME: The test case might be wrong + QTest::newRow("ax::mojom::Role::kLayoutTableRow") << QString("
        ") << 1 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kLegend") << QString("a") << 0 << QAccessible::StaticText; + QTest::newRow("ax::mojom::Role::kLineBreak") << QString("
        ") << 1 << QAccessible::Separator; + QTest::newRow("ax::mojom::Role::kLink") << QString("link") << 1 << QAccessible::Link; + QTest::newRow("ax::mojom::Role::kList") << QString("
          ") << 0 << QAccessible::List; + QTest::newRow("ax::mojom::Role::kListBox") << QString("") << 1 << QAccessible::ComboBox; + QTest::newRow("ax::mojom::Role::kListBoxOption") << QString("") << 0 << QAccessible::ListItem; + QTest::newRow("ax::mojom::Role::kListItem") << QString("
        • a
        • ") << 0 << QAccessible::ListItem; + //QTest::newRow("ax::mojom::Role::kListGrid"); // No mapping to ARIA role + QTest::newRow("ax::mojom::Role::kListMarker") << QString("
          • ") << 1 << QAccessible::StaticText; + QTest::newRow("ax::mojom::Role::kLog") << QString("
            a
            ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kMain") << QString("
            a
            ") << 0 << QAccessible::Grouping; + QTest::newRow("ax::mojom::Role::kMark") << QString("a") << 1 << QAccessible::StaticText; + QTest::newRow("ax::mojom::Role::kMarquee") << QString("
            a
            ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kMath") << QString("a") << 1 << QAccessible::Equation; + QTest::newRow("ax::mojom::Role::kMenu") << QString("
            a
            ") << 0 << QAccessible::PopupMenu; + QTest::newRow("ax::mojom::Role::kMenuBar") << QString("
            a
            ") << 0 << QAccessible::MenuBar; + QTest::newRow("ax::mojom::Role::kMenuItem") << QString("") << 1 << QAccessible::MenuItem; + QTest::newRow("ax::mojom::Role::kMenuItemCheckBox") << QString("") << 1 << QAccessible::CheckBox; + QTest::newRow("ax::mojom::Role::kMenuItemRadio") << QString("") << 1 << QAccessible::RadioButton; + QTest::newRow("ax::mojom::Role::kMenuButton") << QString("
            a
            ") << 1 << QAccessible::MenuItem; + QTest::newRow("ax::mojom::Role::kMenuListOption") << QString("") << 3 << QAccessible::MenuItem; + QTest::newRow("ax::mojom::Role::kMenuListPopup") << QString("") << 2 << QAccessible::PopupMenu; + QTest::newRow("ax::mojom::Role::kMeter") << QString("a") << 1 << QAccessible::Chart; + QTest::newRow("ax::mojom::Role::kNavigation") << QString("") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kNote") << QString("
            a
            ") << 0 << QAccessible::Note; + //QTest::newRow("ax::mojom::Role::kPane"); // No mapping to ARIA role + QTest::newRow("ax::mojom::Role::kParagraph") << QString("

            a

            ") << 0 << QAccessible::Paragraph; + QTest::newRow("ax::mojom::Role::kPopUpButton") << QString("") << 1 << QAccessible::ComboBox; + QTest::newRow("ax::mojom::Role::kPre") << QString("
            a
            ") << 0 << QAccessible::Section; + //QTest::newRow("ax::mojom::Role::kPresentational") << QString("
            a
            ") << 0 << QAccessible::NoRole; // FIXME: Aria role 'presentation' should work + QTest::newRow("ax::mojom::Role::kProgressIndicator") << QString("
            ") << 0 << QAccessible::ProgressBar; + QTest::newRow("ax::mojom::Role::kRadioButton") << QString("") << 1 << QAccessible::RadioButton; + QTest::newRow("ax::mojom::Role::kRadioGroup") << QString("
            ") << 0 << QAccessible::Grouping; + QTest::newRow("ax::mojom::Role::kRegion") << QString("
            a
            ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kRow") << QString("
            a
            ") << 1 << QAccessible::Row; + QTest::newRow("ax::mojom::Role::kRowHeader") << QString("
            ab
            ") << 2 << QAccessible::RowHeader; + QTest::newRow("ax::mojom::Role::kRuby") << QString("a") << 1 << QAccessible::StaticText; + QTest::newRow("ax::mojom::Role::kRubyAnnotation") << QString("a") << 2 << QAccessible::StaticText; + QTest::newRow("ax::mojom::Role::kScrollBar") << QString("
            a") << 0 << QAccessible::ScrollBar; + //QTest::newRow("ax::mojom::Role::kScrollView"); // No mapping to ARIA role + QTest::newRow("ax::mojom::Role::kSearch") << QString("
            landmark
            ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kSearchBox") << QString("") << 1 << QAccessible::EditableText; + QTest::newRow("ax::mojom::Role::kSection") << QString("
            ") << 0 << QAccessible::Section; + QTest::newRow("ax::mojom::Role::kSlider") << QString("") << 1 << QAccessible::Slider; + //QTest::newRow("ax::mojom::Role::kSliderThumb") << QString("") << 1 << QAccessible::Slider; // TODO: blink/renderer/modules/accessibility/ax_slider.cc + QTest::newRow("ax::mojom::Role::kSpinButton") << QString("") << 1 << QAccessible::SpinBox; + QTest::newRow("ax::mojom::Role::kSplitter") << QString("
            ") << 0 << QAccessible::Splitter; + QTest::newRow("ax::mojom::Role::kStaticText") << QString("a") << 1 << QAccessible::StaticText; + QTest::newRow("ax::mojom::Role::kStatus") << QString("a") << 1 << QAccessible::Indicator; + QTest::newRow("ax::mojom::Role::kSvgRoot") << QString("") << 1 << QAccessible::Graphic; + QTest::newRow("ax::mojom::Role::kSwitch") << QString("") << 1 << QAccessible::Button; + QTest::newRow("ax::mojom::Role::kTable") << QString("
            a
            ") << 0 << QAccessible::Table; + //QTest::newRow("ax::mojom::Role::kTableHeaderContainer"); // No mapping to ARIA role + QTest::newRow("ax::mojom::Role::kTab") << QString("
            a
            ") << 0 << QAccessible::PageTab; + QTest::newRow("ax::mojom::Role::kTabList") << QString("
            a
            ") << 0 << QAccessible::PageTabList; + QTest::newRow("ax::mojom::Role::kTabPanel") << QString("
            a
            ") << 0 << QAccessible::Pane; + QTest::newRow("ax::mojom::Role::kTerm") << QString("
            a
            ") << 0 << QAccessible::StaticText; + QTest::newRow("ax::mojom::Role::kTextField") << QString("") << 1 << QAccessible::EditableText; + QTest::newRow("ax::mojom::Role::kTime") << QString("") << 1 << QAccessible::Clock; + QTest::newRow("ax::mojom::Role::kTimer") << QString("
            a
            ") << 0 << QAccessible::Clock; + //QTest::newRow("ax::mojom::Role::kTitleBar"); // No mapping to ARIA role + QTest::newRow("ax::mojom::Role::kToggleButton") << QString("") << 1 << QAccessible::Button; + QTest::newRow("ax::mojom::Role::kToolbar") << QString("
            a
            ") << 0 << QAccessible::ToolBar; + QTest::newRow("ax::mojom::Role::kToolTip") << QString("
            a
            ") << 0 << QAccessible::ToolTip; + QTest::newRow("ax::mojom::Role::kTree") << QString("
            a
            ") << 0 << QAccessible::Tree; + QTest::newRow("ax::mojom::Role::kTreeGrid") << QString("
            a
            ") << 0 << QAccessible::Tree; + QTest::newRow("ax::mojom::Role::kTreeItem") << QString("
            a
            ") << 0 << QAccessible::TreeItem; + QTest::newRow("ax::mojom::Role::kVideo") << QString("") << 1 << QAccessible::Animation; + //QTest::newRow("ax::mojom::Role::kWindow"); // No mapping to ARIA role } void tst_Accessibility::roles() -- cgit v1.2.3