| <!doctype html> |
| <meta charset="utf-8"> |
| <title>Range stringifier</title> |
| <link rel="author" title="KiChjang" href="mailto:kungfukeith11@gmail.com"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <div id=test>Test div</div> |
| <div id=another>Another div</div> |
| <div id=last>Last div</div> |
| <div id=log></div> |
| <script> |
| test(function() { |
| var r = new Range(); |
| var testDiv = document.getElementById("test"); |
| test(function() { |
| r.selectNodeContents(testDiv); |
| assert_equals(r.collapsed, false); |
| assert_equals(r.toString(), testDiv.textContent); |
| }, "Node contents of a single div"); |
| |
| var textNode = testDiv.childNodes[0]; |
| test(function() { |
| r.setStart(textNode, 5); |
| r.setEnd(textNode, 7); |
| assert_equals(r.collapsed, false); |
| assert_equals(r.toString(), "di"); |
| }, "Text node with offsets"); |
| |
| var anotherDiv = document.getElementById("another"); |
| test(function() { |
| r.setStart(testDiv, 0); |
| r.setEnd(anotherDiv, 0); |
| assert_equals(r.toString(), "Test div\n"); |
| }, "Two nodes, each with a text node"); |
| |
| var lastDiv = document.getElementById("last"); |
| var lastText = lastDiv.childNodes[0]; |
| test(function() { |
| r.setStart(textNode, 5); |
| r.setEnd(lastText, 4); |
| assert_equals(r.toString(), "div\nAnother div\nLast"); |
| }, "Three nodes with start offset and end offset on text nodes"); |
| }); |
| </script> |