blob: d686ff0b32d52bf7ba2a64bfc415e81e46ebc812 [file] [log] [blame]
<!DOCTYPE html>
<html>
<body>
<script src="../../../resources/js-test-pre.js"></script>
<script>
description("This test calls comparePoint on detached nodes. They should compare nodes when they're in the same detached tree and throw otherwise.")
var detachedDiv = document.createElement('div');
var spanInDetachedDiv1 = document.createElement('span');
var spanInDetachedDiv2 = document.createElement('span');
detachedDiv.appendChild(spanInDetachedDiv1);
detachedDiv.appendChild(spanInDetachedDiv2);
var detachedP = document.createElement('p');
var spanInDetachedP = document.createElement('span');
detachedP.appendChild(spanInDetachedP);
shouldBe("var range = new Range; range.setStart(detachedDiv, 0); range.comparePoint(detachedDiv, 0);", "0");
shouldBe("var range = new Range; range.setStart(detachedDiv, 0); range.comparePoint(detachedDiv, 1);", "1");
shouldBe("var range = new Range; range.setStart(detachedDiv, 2); range.comparePoint(detachedDiv, 1);", "-1");
shouldBe("var range = new Range; range.setStart(spanInDetachedDiv1, 0); range.comparePoint(spanInDetachedDiv2, 0);", "1");
shouldBe("var range = new Range; range.setStart(spanInDetachedDiv2, 0); range.comparePoint(spanInDetachedDiv1, 0);", "-1");
shouldBe("var range = new Range; range.setStart(spanInDetachedDiv1, 0); range.comparePoint(spanInDetachedDiv1, 0);", "0");
shouldThrowErrorName("var range = new Range; range.setStart(detachedDiv, 0); range.comparePoint(detachedP, 0);", "WrongDocumentError");
shouldThrowErrorName("var range = new Range; range.setStart(spanInDetachedDiv1, 0); range.comparePoint(spanInDetachedP, 0);", "WrongDocumentError");
var successfullyParsed = true;
</script>
<script src="../../../resources/js-test-post.js"></script>
</body>
</html>