This tests that selection changes as a result of advancing focus include AXTextSelectionChangedFocus flag.

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


PASS webArea.addNotificationListener(notificationCallback) is true
eventSender.keyDown(tabCharacter);
Received AXSelectedTextChanged
PASS userInfo["AXTextSelectionChangedFocus"] is true
Received AXFocusChanged
Received AXSelectedTextChanged
PASS userInfo["AXTextSelectionChangedFocus"] is true

PASS accessibilityController.accessibleElementById("1").isFocusable is true
accessibilityController.accessibleElementById("1").takeFocus()
Received AXFocusChanged

eventSender.keyDown(tabCharacter)
Received AXSelectedTextChanged
PASS userInfo["AXTextSelectionChangedFocus"] is true
Received AXFocusChanged
Received AXSelectedTextChanged
PASS userInfo["AXTextSelectionChangedFocus"] is true
PASS successfullyParsed is true

TEST COMPLETE

 1
 2
