This verifies the exposure of aria-properties via accessible relations.

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


axElement.ariaOwnsElementAtIndex(0): AXButton: 'owned 1'
owned.ariaOwnsReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'

axElement.ariaOwnsElementAtIndex(1): AXRadioButton: 'owned 2'
owned.ariaOwnsReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'

axElement.ariaControlsElementAtIndex(0): AXGroup: 'controlled 1'
controlled.ariaControlsReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'

axElement.ariaControlsElementAtIndex(1): AXGroup: 'controlled 2'
controlled.ariaControlsReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'

axElement.ariaLabelledByElementAtIndex(0): AXParagraph: 'label 1'
labelledBy.ariaLabelledByReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'

axElement.ariaLabelledByElementAtIndex(1): AXSection: 'label 2'
labelledBy.ariaLabelledByReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'

axElement.ariaDescribedByElementAtIndex(0): AXParagraph: 'description 1'
describedBy.ariaDescribedByReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'
describedBy.ariaDescribedByReferencingElementAtIndex(1): AXGroup: 'next group (1 of 2)'

axElement.ariaDescribedByElementAtIndex(1): AXSection: 'description 2'
describedBy.ariaDescribedByReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'
describedBy.ariaDescribedByReferencingElementAtIndex(1): AXGroup: 'next group (2 of 2)'

axElement.ariaFlowToElementAtIndex(0): AXGroup: 'next group (1 of 2)'
flowTo.ariaFlowToReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'

axElement.ariaFlowToElementAtIndex(1): AXGroup: 'next group (2 of 2)'
flowTo.ariaFlowToReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'

axElement.ariaDetailsElementAtIndex(0): AXSection: 'Detailed descriptive information.'
details.ariaDetailsReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'

axElement.ariaErrorMessageElementAtIndex(0): AXSection: 'Information about the error.'
error.ariaErrorMessageReferencingElementAtIndex(0): AXGroup: 'label 1 label 2'
PASS successfullyParsed is true

TEST COMPLETE

