This test checks that radio buttons expose title ui elements correctly under a variety of cirmcumstances. In general, the should disappear and act as the title for the radio button.

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


PASS focusedElement.name is 'LABEL'
PASS !titleUIElement || titleUIElement.name == '' is true
PASS focusedElement.name is 'LABEL2a'
PASS focusedElement.description is ''
PASS !titleUIElement || titleUIElement.name == '' is true
PASS focusedElement.name is 'radio3'
PASS focusedElement.description is ''
PASS !titleUIElement || titleUIElement.name == '' is true
PASS successfullyParsed is true

TEST COMPLETE
Test
LABEL  Test
LABEL2
LABEL2a
Test
LABEL3
