| <!doctype html> |
| <script src="../../../resources/testharness.js"></script> |
| <script src="../../../resources/testharnessreport.js"></script> |
| <script> |
| test(() => { |
| const textNode = new Text('chopped off and then some'); |
| const range = new Range(); |
| range.setStart(textNode, textNode.length); |
| textNode.deleteData(11, 0xfffffff7); |
| assert_equals(textNode.data, 'chopped off'); |
| assert_equals(range.endOffset, 11); |
| }, 'Range#deleteData() with huge end offset'); |
| |
| test(() => { |
| const textNode = new Text('hello world'); |
| const range = new Range(); |
| range.setStart(textNode, textNode.length); |
| textNode.replaceData(6, 0xfffffffe, 'bob'); |
| assert_equals(textNode.data, 'hello bob'); |
| assert_equals(range.endOffset, 6); |
| }, 'Range#replaceData() with huge end offset'); |
| |
| test(() => { |
| const textNode = new Text('hello world'); |
| const range = new Range(); |
| range.setStart(textNode, textNode.length); |
| textNode.replaceData(6, -1, 'bob'); |
| assert_equals(textNode.data, 'hello bob'); |
| assert_equals(range.endOffset, 6); |
| }, 'Range#replaceData() with negative end offset(-1)'); |
| |
| test(() => { |
| const textNode = new Text('hello world'); |
| const range = new Range(); |
| range.setStart(textNode, textNode.length); |
| textNode.replaceData(6, -2, 'bob'); |
| assert_equals(textNode.data, 'hello bob'); |
| assert_equals(range.endOffset, 6); |
| }, 'Range#replaceData() with negative end offset(-2)'); |
| </script> |