mirror of
https://github.com/servo/servo.git
synced 2025-08-07 06:25:32 +01:00
Implement Stringifier for Range
This commit is contained in:
parent
ae67ae9cdb
commit
b32e859c3a
5 changed files with 95 additions and 5 deletions
|
@ -0,0 +1,44 @@
|
|||
<!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>
|
Loading…
Add table
Add a link
Reference in a new issue