Tests that shift+clicking does the platform correct behavior.

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


PASS window.getSelection().toString() is correct
PASS Selection direction is correct.
PASS window.getSelection().toString() is correct
PASS Selection direction is correct.
PASS window.getSelection().toString() is correct
PASS Selection direction is correct.
FAIL window.getSelection().toString() is "one two three
four five " and should be "one two three
four five"
PASS Selection direction is correct.
FAIL window.getSelection().toString() is "two three
four five six" and should be "two three
four five"
PASS Selection direction is correct.
PASS window.getSelection().toString() is correct
PASS Selection direction is correct.
PASS window.getSelection().toString() is correct
PASS Selection direction is correct.
PASS window.getSelection().toString() is correct
PASS Selection direction is correct.
PASS window.getSelection().toString() is correct
PASS Selection direction is correct.
PASS window.getSelection().toString() is correct
FAIL Selection direction is not correct. Expected a backward selection.[anchorNode: [object Text](two three) anchorOffset: 0 focusNode: [object Text](two three) focusOffset: 3 isCollapsed: false]
PASS successfullyParsed is true

TEST COMPLETE
one two three
four five six
