a
2

a
2

a

3
a

2
a
e

2
sub

2
sup

2
sub
sup

3
under

3
over

3
under
over

3	2	1
This tests ensures that Mac specific attributes and roles for MathML elements work as expected.

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


PASS row.role is 'AXRole: AXGroup'
PASS row.subrole is 'AXSubrole: AXMathRow'
PASS row.childAtIndex(0).subrole is 'AXSubrole: AXMathIdentifier'
PASS row.childAtIndex(0).childAtIndex(0).stringValue is 'AXValue: a'
PASS row.childAtIndex(1).subrole is 'AXSubrole: AXMathNumber'
PASS row.childAtIndex(1).childAtIndex(0).stringValue is 'AXValue: 2'
PASS fraction.subrole is 'AXSubrole: AXMathFraction'
PASS fractionDenominator.subrole is 'AXSubrole: AXMathNumber'
PASS fractionDenominator.childAtIndex(0).stringValue is 'AXValue: 2'
PASS fractionDenominator.isEqual(accessibilityController.accessibleElementById('fractionDenominator')) is true
PASS fractionNumerator.subrole is 'AXSubrole: AXMathIdentifier'
PASS fractionNumerator.childAtIndex(0).stringValue is 'AXValue: a'
PASS fractionNumerator.isEqual(accessibilityController.accessibleElementById('fractionNumerator')) is true
PASS sqrt.role is 'AXRole: AXGroup'
PASS sqrt.subrole is 'AXSubrole: AXMathSquareRoot'
PASS sqrt.mathRootRadicand.length is 1
PASS sqrtRadicand.subrole is 'AXSubrole: AXMathIdentifier'
PASS sqrtRadicand.childAtIndex(0).stringValue is 'AXValue: a'
PASS sqrtRadicand.isEqual(accessibilityController.accessibleElementById('sqrtRadicand')) is true
PASS root.role is 'AXRole: AXGroup'
PASS root.subrole is 'AXSubrole: AXMathRoot'
PASS root.mathRootRadicand.length is 1
PASS rootIndex.isEqual(accessibilityController.accessibleElementById('rootIndex')) is true
PASS rootRadicand.isEqual(accessibilityController.accessibleElementById('rootRadicand')) is true
PASS fenced.role is 'AXRole: AXGroup'
PASS fenced.subrole is 'AXSubrole: AXMathFenced'
PASS fenced.stringAttributeValue('AXMathFencedOpen') is '{'
PASS fenced.stringAttributeValue('AXMathFencedClose') is '}'
PASS child.stringValue is 'AXValue: {'
PASS child.childAtIndex(0).stringValue is 'AXValue: 2'
PASS child.stringValue is 'AXValue: ,'
PASS child.childAtIndex(0).stringValue is 'AXValue: a'
PASS child.stringValue is 'AXValue: ,'
PASS child.childAtIndex(0).stringValue is 'AXValue: e'
PASS child.stringValue is 'AXValue: }'
PASS sub.role is 'AXRole: AXGroup'
PASS sub.subrole is 'AXSubrole: AXMathSubscriptSuperscript'
PASS subBase.subrole is 'AXSubrole: AXMathIdentifier'
PASS subSub.subrole is 'AXSubrole: AXMathText'
PASS subBase.isEqual(accessibilityController.accessibleElementById('subBase')) is true
PASS subSub.isEqual(accessibilityController.accessibleElementById('subSub')) is true
PASS sup.role is 'AXRole: AXGroup'
PASS sup.subrole is 'AXSubrole: AXMathSubscriptSuperscript'
PASS supBase.subrole is 'AXSubrole: AXMathIdentifier'
PASS supSup.subrole is 'AXSubrole: AXMathText'
PASS supBase.isEqual(accessibilityController.accessibleElementById('supBase')) is true
PASS supSup.isEqual(accessibilityController.accessibleElementById('supSup')) is true
PASS subsup.role is 'AXRole: AXGroup'
PASS subsup.subrole is 'AXSubrole: AXMathSubscriptSuperscript'
PASS subsupBase.subrole is 'AXSubrole: AXMathIdentifier'
PASS subsupSup.subrole is 'AXSubrole: AXMathText'
PASS subsupSub.subrole is 'AXSubrole: AXMathText'
PASS subsupBase.isEqual(accessibilityController.accessibleElementById('subsupBase')) is true
PASS subsupSub.isEqual(accessibilityController.accessibleElementById('subsupSub')) is true
PASS subsupSup.isEqual(accessibilityController.accessibleElementById('subsupSup')) is true
PASS under.role is 'AXRole: AXGroup'
PASS under.subrole is 'AXSubrole: AXMathUnderOver'
PASS underBase.subrole is 'AXSubrole: AXMathIdentifier'
PASS underUnder.subrole is 'AXSubrole: AXMathText'
PASS underUnder.isEqual(accessibilityController.accessibleElementById('underUnder')) is true
PASS over.role is 'AXRole: AXGroup'
PASS over.subrole is 'AXSubrole: AXMathUnderOver'
PASS overBase.subrole is 'AXSubrole: AXMathIdentifier'
PASS overOver.subrole is 'AXSubrole: AXMathText'
PASS overBase.isEqual(accessibilityController.accessibleElementById('overBase')) is true
PASS overOver.isEqual(accessibilityController.accessibleElementById('overOver')) is true
PASS underover.role is 'AXRole: AXGroup'
PASS underover.subrole is 'AXSubrole: AXMathUnderOver'
PASS underOverBase.subrole is 'AXSubrole: AXMathIdentifier'
PASS underOverUnder.subrole is 'AXSubrole: AXMathText'
PASS underOverOver.subrole is 'AXSubrole: AXMathText'
PASS underOverBase.isEqual(accessibilityController.accessibleElementById('underOverBase')) is true
PASS underOverUnder.isEqual(accessibilityController.accessibleElementById('underOverUnder')) is true
PASS underOverOver.isEqual(accessibilityController.accessibleElementById('underOverOver')) is true
PASS table.role is 'AXRole: AXGroup'
PASS table.subrole is 'AXSubrole: AXMathTable'
PASS row.subrole is 'AXSubrole: AXMathTableRow'
PASS cell.subrole is 'AXSubrole: AXMathTableCell'
PASS cell.childAtIndex(0).subrole is 'AXSubrole: AXMathIdentifier'
PASS successfullyParsed is true

TEST COMPLETE

