Acid3 test 77, checking text metric functionality

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


PASS text.getNumberOfChars() is 3
PASS text.getComputedTextLength() is 4780
PASS text.getSubStringLength(0,1) is 44
PASS text.getSubStringLength(0,2) is 68
PASS text.getSubStringLength(1,1) is 24
PASS text.getSubStringLength(1,0) is 0
PASS text.getSubStringLength(1, 3) is 4736
PASS text.getSubStringLength(0, 4) is 4780
PASS text.getSubStringLength(3, 0) threw exception IndexSizeError: The index is not in the allowed range..
PASS text.getSubStringLength(-17, 20) threw exception IndexSizeError: The index is not in the allowed range..
PASS text.getStartPositionOfChar(0).x is 0
PASS text.getStartPositionOfChar(1).x is 44
PASS text.getStartPositionOfChar(2).x is 68
PASS text.getStartPositionOfChar(0).y is 4000
PASS text.getEndPositionOfChar(-1) threw exception IndexSizeError: The index is not in the allowed range..
PASS text.getEndPositionOfChar(4) threw exception IndexSizeError: The index is not in the allowed range..
PASS text.getEndPositionOfChar(0).x is 44
PASS text.getEndPositionOfChar(1).x is 68
PASS text.getEndPositionOfChar(2).x is 4780
PASS text.getEndPositionOfChar(-17) threw exception IndexSizeError: The index is not in the allowed range..
PASS text.getEndPositionOfChar(4) threw exception IndexSizeError: The index is not in the allowed range..
PASS successfullyParsed is true

TEST COMPLETE

