Unit tests for WebCore text iterator

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


PASS range.selectNodeContents(testDocument.body); internals.rangeAsText(range) is ""
PASS range.selectNodeContents(testDocument.body); internals.rangeAsText(range) is "a"
PASS range.selectNodeContents(testDocument.body); internals.rangeAsText(range) is "a"
PASS range.selectNodeContents(testDocument.body); internals.rangeAsText(range) is "a\nb"
PASS range.selectNodeContents(testDocument.body); internals.rangeAsText(range) is "debugging this note"
FAIL range.selectNodeContents(testDocument.body); internals.rangeAsText(range) should be Hello
. Was Hello

.
PASS range.selectNodeContents(testDocument.body); internals.rangeAsText(range) is "hey"
PASS range.setStartBefore(testDocument.body); range.setEndAfter(testDocument.body); internals.rangeAsText(range) is "hey"
PASS range.selectNodeContents(internals.shadowRoot(input)); internals.rangeAsText(range) is "b"
PASS appendBrElement(internals.shadowRoot(input).childNodes[0]); range.selectNodeContents(internals.shadowRoot(input)); internals.rangeAsText(range) is "b"
PASS successfullyParsed is true

TEST COMPLETE

