This test verifies that the callout bar is shown after selecting a word in an editable element using the callout bar. To test manually, focus the editable area and tap 'Select' in the callout bar; the callout bar should appear again, with an option to 'Copy'.

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

PASS Showed menu by tapping
PASS Selected word using menu action
PASS Callout bar contains 'Copy' action
PASS successfullyParsed is true

TEST COMPLETE

