
Verifies that a menu is shown when the page programmatically triggers paste, and that dismissing the menu prevents the paste from happening. To manually test, click or tap the text on the bottom, click or tap the editable area above, and then dismiss the resulting menu by interacting elsewhere. The text 'Click here to copy' should not be pasted, and the menu should disappear.

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

PASS document.queryCommandSupported('Paste') is true
PASS document.queryCommandEnabled('Paste') is true
PASS document.execCommand('Paste') is false
PASS document.execCommand('Paste') is false
PASS editor.textContent is ""
PASS successfullyParsed is true

TEST COMPLETE

