Test that the caret is positioned correctly when its offset occurrs in the middle of a ligature, and that hit-testing in the middle of a ligature works correctly.

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


PASS document.caretRangeFromPoint(10, y).startOffset is 0
PASS document.caretRangeFromPoint(30, y).startOffset is 1
PASS document.caretRangeFromPoint(60, y).startOffset is 2
PASS document.caretRangeFromPoint(80, y).startOffset is 3
PASS document.caretRangeFromPoint(100, y).startOffset is 4
PASS document.caretRangeFromPoint(120, y).startOffset is 5
PASS range.getBoundingClientRect().width is 80
PASS document.caretRangeFromPoint(x - 20, y).startOffset is 0
PASS document.caretRangeFromPoint(x - 50, y).startOffset is 1
PASS document.caretRangeFromPoint(x - 64, y).startOffset is 2
PASS document.caretRangeFromPoint(x - 90, y).startOffset is 3
PASS w === 66 || w === 65 || w === 61 is true
PASS successfullyParsed is true

TEST COMPLETE

