This tests enabling of non-execCommand commands based on whether the selection is a caret or range or in editable content.

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


PASS whenEnabled('Print') is 'always'
PASS whenEnabled('SelectAll') is 'always'
PASS whenEnabled('Transpose') is 'caret'
PASS whenEnabled('Copy') is 'range'
PASS whenEnabled('Cut') is 'editable range'
PASS whenEnabled('Delete') is 'editable range'
PASS whenEnabled('DeleteBackward') is 'editable'
PASS whenEnabled('DeleteBackwardByDecomposingPreviousCharacter') is 'editable'
PASS whenEnabled('DeleteForward') is 'editable'
PASS whenEnabled('DeleteToBeginningOfLine') is 'editable'
PASS whenEnabled('DeleteToBeginningOfParagraph') is 'editable'
PASS whenEnabled('DeleteToEndOfLine') is 'editable'
PASS whenEnabled('DeleteToEndOfParagraph') is 'editable'
PASS whenEnabled('DeleteToMark') is 'editable'
PASS whenEnabled('DeleteWordBackward') is 'editable'
PASS whenEnabled('DeleteWordForward') is 'editable'
PASS whenEnabled('IgnoreSpelling') is 'editable'
PASS whenEnabled('InsertBacktab') is 'editable'
PASS whenEnabled('InsertLineBreak') is 'editable'
PASS whenEnabled('InsertNewline') is 'editable'
PASS whenEnabled('InsertTab') is 'editable'
PASS whenEnabled('MoveBackward') is 'editable'
PASS whenEnabled('MoveDown') is 'editable'
PASS whenEnabled('MoveForward') is 'editable'
PASS whenEnabled('MoveLeft') is 'editable'
PASS whenEnabled('MoveRight') is 'editable'
PASS whenEnabled('MoveToBeginningOfDocument') is 'editable'
PASS whenEnabled('MoveToBeginningOfLine') is 'editable'
PASS whenEnabled('MoveToBeginningOfParagraph') is 'editable'
PASS whenEnabled('MoveToBeginningOfSentence') is 'editable'
PASS whenEnabled('MoveToEndOfDocument') is 'editable'
PASS whenEnabled('MoveToEndOfLine') is 'editable'
PASS whenEnabled('MoveToEndOfParagraph') is 'editable'
PASS whenEnabled('MoveToEndOfSentence') is 'editable'
PASS whenEnabled('MoveUp') is 'editable'
PASS whenEnabled('MoveParagraphBackward') is 'editable'
PASS whenEnabled('MoveParagraphForward') is 'editable'
PASS whenEnabled('MoveWordBackward') is 'editable'
PASS whenEnabled('MoveWordForward') is 'editable'
PASS whenEnabled('MoveWordLeft') is 'editable'
PASS whenEnabled('MoveWordRight') is 'editable'
PASS whenEnabled('Yank') is 'editable'
PASS whenEnabled('YankAndSelect') is 'editable'
PASS whenEnabled('AlignCenter') is 'richly editable'
PASS whenEnabled('AlignJustified') is 'richly editable'
PASS whenEnabled('AlignLeft') is 'richly editable'
PASS whenEnabled('AlignRight') is 'richly editable'
PASS whenEnabled('Indent') is 'richly editable'
PASS whenEnabled('MakeTextWritingDirectionLeftToRight') is 'richly editable'
PASS whenEnabled('MakeTextWritingDirectionNatural') is 'richly editable'
PASS whenEnabled('MakeTextWritingDirectionRightToLeft') is 'richly editable'
PASS whenEnabled('Outdent') is 'richly editable'
PASS whenEnabled('Subscript') is 'richly editable'
PASS whenEnabled('Superscript') is 'richly editable'
PASS whenEnabled('Underline') is 'richly editable'
PASS whenEnabled('Unscript') is 'richly editable'
PASS whenEnabled('Paste') is 'editable'
PASS whenEnabled('MoveBackwardAndModifySelection') is 'visible'
PASS whenEnabled('MoveDownAndModifySelection') is 'visible'
PASS whenEnabled('MoveForwardAndModifySelection') is 'visible'
PASS whenEnabled('MoveLeftAndModifySelection') is 'visible'
PASS whenEnabled('MoveParagraphBackwardAndModifySelection') is 'visible'
PASS whenEnabled('MoveParagraphForwardAndModifySelection') is 'visible'
PASS whenEnabled('MoveRightAndModifySelection') is 'visible'
PASS whenEnabled('MoveToBeginningOfDocumentAndModifySelection') is 'visible'
PASS whenEnabled('MoveToBeginningOfLineAndModifySelection') is 'visible'
PASS whenEnabled('MoveToBeginningOfParagraphAndModifySelection') is 'visible'
PASS whenEnabled('MoveToBeginningOfSentenceAndModifySelection') is 'visible'
PASS whenEnabled('MoveToEndOfDocumentAndModifySelection') is 'visible'
PASS whenEnabled('MoveToEndOfLineAndModifySelection') is 'visible'
PASS whenEnabled('MoveToEndOfParagraphAndModifySelection') is 'visible'
PASS whenEnabled('MoveToEndOfSentenceAndModifySelection') is 'visible'
PASS whenEnabled('MoveUpAndModifySelection') is 'visible'
PASS whenEnabled('MoveWordBackwardAndModifySelection') is 'visible'
PASS whenEnabled('MoveWordForwardAndModifySelection') is 'visible'
PASS whenEnabled('MoveWordLeftAndModifySelection') is 'visible'
PASS whenEnabled('MoveWordRightAndModifySelection') is 'visible'
PASS whenEnabled('SelectLine') is 'visible'
PASS whenEnabled('SelectParagraph') is 'visible'
PASS whenEnabled('SelectSentence') is 'visible'
PASS whenEnabled('SelectWord') is 'visible'
PASS whenEnabled('SetMark') is 'visible'
PASS whenEnabled('OverWrite') is 'richly editable'
PASS successfullyParsed is true

TEST COMPLETE

