This is a Header for this page
Heading
Division

Paragraph

韓國한국
Coffee
- black hot drink
Milk
- white cold drink
x
+
a
/
b
Most important heading here
Google Chrome

Google Chrome is a free, open-source web browser developed by Google, released in 2008.

Footer in article

HTML | CSS | JavaScript |

Text that appears under aside

Text in a    pre
element

Most important heading here

Section

Footer in section

Written by Julie
Visit us at:www.chromium.org


January
This is an open dialog window

Caption
Cell1	Cell2
Fig1. - Blue Box

This is a footer.

This test make sure that unfocuasable elements are mapped implicitly to AX roles.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".

AXRole: AXGenericContainer
    AXRole: AXHeader
        AXRole: AXStaticText "This is a Header for this page"
            AXRole: AXInlineTextBox "This is a Header for this page"
    AXRole: AXHeading "Heading"
        AXRole: AXStaticText "Heading"
            AXRole: AXInlineTextBox "Heading"
    AXRole: AXGenericContainer
        AXRole: AXStaticText "Division"
            AXRole: AXInlineTextBox "Division"
    AXRole: AXParagraph
        AXRole: AXStaticText "Paragraph"
            AXRole: AXInlineTextBox "Paragraph"
    AXRole: AXRuby
        AXRole: AXStaticText "韓國"
            AXRole: AXInlineTextBox "韓國"
        AXRole: AXRubyAnnotation "한국"
    AXRole: AXDescriptionList
        AXRole: AXDescriptionListTerm
            AXRole: AXStaticText "Coffee"
                AXRole: AXInlineTextBox "Coffee"
        AXRole: AXDescriptionListDetail
            AXRole: AXStaticText "- black hot drink"
                AXRole: AXInlineTextBox "- black hot drink"
        AXRole: AXDescriptionListTerm
            AXRole: AXStaticText "Milk"
                AXRole: AXInlineTextBox "Milk"
        AXRole: AXDescriptionListDetail
            AXRole: AXStaticText "- white cold drink"
                AXRole: AXInlineTextBox "- white cold drink"
    AXRole: AXMath "x + a / b"
        AXRole: AXGenericContainer
            AXRole: AXGenericContainer
                AXRole: AXStaticText "x"
                    AXRole: AXInlineTextBox "x"
            AXRole: AXGenericContainer
                AXRole: AXStaticText "+"
                    AXRole: AXInlineTextBox "+"
            AXRole: AXGenericContainer
                AXRole: AXGenericContainer
                    AXRole: AXStaticText "a"
                        AXRole: AXInlineTextBox "a"
                AXRole: AXGenericContainer
                    AXRole: AXStaticText "/"
                        AXRole: AXInlineTextBox "/"
                AXRole: AXGenericContainer
                    AXRole: AXStaticText "b"
                        AXRole: AXInlineTextBox "b"
    AXRole: AXMain
        AXRole: AXArticle
            AXRole: AXHeaderAsNonLandmark
                AXRole: AXHeading "Most important heading here"
                    AXRole: AXStaticText "Most important heading here"
                        AXRole: AXInlineTextBox "Most important heading here"
            AXRole: AXHeading "Google Chrome"
                AXRole: AXStaticText "Google Chrome"
                    AXRole: AXInlineTextBox "Google Chrome"
            AXRole: AXParagraph
                AXRole: AXStaticText "Google Chrome is a free, open-source web browser developed by Google, released in 2008."
                    AXRole: AXInlineTextBox "Google Chrome is a free, open-source web browser developed by Google, released in 2008."
            AXRole: AXFooterAsNonLandmark
                AXRole: AXParagraph
                    AXRole: AXStaticText "Footer in article"
                        AXRole: AXInlineTextBox "Footer in article"
    AXRole: AXNavigation
        AXRole: AXLink "HTML"
            AXRole: AXStaticText "HTML"
                AXRole: AXInlineTextBox "HTML"
        AXRole: AXStaticText " | "
            AXRole: AXInlineTextBox " | "
        AXRole: AXLink "CSS"
            AXRole: AXStaticText "CSS"
                AXRole: AXInlineTextBox "CSS"
        AXRole: AXStaticText " | "
            AXRole: AXInlineTextBox " | "
        AXRole: AXLink "JavaScript"
            AXRole: AXStaticText "JavaScript"
                AXRole: AXInlineTextBox "JavaScript"
        AXRole: AXStaticText " |"
            AXRole: AXInlineTextBox " |"
    AXRole: AXComplementary
        AXRole: AXParagraph
            AXRole: AXStaticText "Text that appears under aside"
                AXRole: AXInlineTextBox "Text that appears under aside"
    AXRole: AXPre
        AXRole: AXStaticText "Text in a    pre
element
"
            AXRole: AXInlineTextBox "Text in a    pre"
            AXRole: AXInlineTextBox "
"
            AXRole: AXInlineTextBox "element"
            AXRole: AXInlineTextBox "
"
    AXRole: AXSection
        AXRole: AXHeaderAsNonLandmark
            AXRole: AXHeading "Most important heading here"
                AXRole: AXStaticText "Most important heading here"
                    AXRole: AXInlineTextBox "Most important heading here"
        AXRole: AXParagraph
            AXRole: AXStaticText "Section"
                AXRole: AXInlineTextBox "Section"
        AXRole: AXFooterAsNonLandmark
            AXRole: AXParagraph
                AXRole: AXStaticText "Footer in section"
                    AXRole: AXInlineTextBox "Footer in section"
    AXRole: AXGenericContainer
        AXRole: AXStaticText "Written by Julie"
            AXRole: AXInlineTextBox "Written by Julie"
        AXRole: AXLineBreak "
"
            AXRole: AXInlineTextBox "
"
        AXRole: AXStaticText "Visit us at:www.chromium.org"
            AXRole: AXInlineTextBox "Visit us at:www.chromium.org"
        AXRole: AXLineBreak "
"
            AXRole: AXInlineTextBox "
"
    AXRole: AXParagraph
        AXRole: AXStaticText "January"
            AXRole: AXInlineTextBox "January"
        AXRole: AXDialog
            AXRole: AXStaticText "This is an open dialog window"
                AXRole: AXInlineTextBox "This is an open dialog window"
    AXRole: AXTable "Caption"
        AXRole: AXCaption
            AXRole: AXStaticText "Caption"
                AXRole: AXInlineTextBox "Caption"
        AXRole: AXRowGroup
            AXRole: AXRow
                AXRole: AXCell "Cell1"
                    AXRole: AXStaticText "Cell1"
                        AXRole: AXInlineTextBox "Cell1"
                AXRole: AXCell "Cell2"
                    AXRole: AXStaticText "Cell2"
                        AXRole: AXInlineTextBox "Cell2"
    AXRole: AXFigure "Fig1. - Blue Box"
        AXRole: AXImage "blue"
        AXRole: AXFigcaption
            AXRole: AXStaticText "Fig1. - Blue Box"
                AXRole: AXInlineTextBox "Fig1. - Blue Box"
    AXRole: AXEmbeddedObject
    AXRole: AXFooter
        AXRole: AXParagraph
            AXRole: AXStaticText "This is a footer."
                AXRole: AXInlineTextBox "This is a footer."

PASS successfullyParsed is true

TEST COMPLETE

