blob: 30d9867b745447377c027062bab408a51fa29157 [file] [log] [blame]
<body>
You should see six OKs below (and not hang): <br>
<script>
if (window.layoutTestController)
layoutTestController.dumpAsText();
var body = document.body;
var selection = window.getSelection();
try {
selection.collapse(body, -1);
} catch (e) {document.write(((e.code==DOMException.INDEX_SIZE_ERR) ? "OK" : "FAIL")+"<br>"); }
try {
selection.setBaseAndExtent(body, -1, body, 0);
} catch (e) {document.write(((e.code==DOMException.INDEX_SIZE_ERR) ? "OK" : "FAIL")+"<br>"); }
try {
selection.setBaseAndExtent(body, 0, body, -1);
} catch (e) {document.write(((e.code==DOMException.INDEX_SIZE_ERR) ? "OK" : "FAIL")+"<br>"); }
try {
selection.setPosition(body, -1);
} catch (e) {document.write(((e.code==DOMException.INDEX_SIZE_ERR) ? "OK" : "FAIL")+"<br>"); }
try {
selection.getRangeAt(-1);
} catch (e) {document.write(((e.code==DOMException.INDEX_SIZE_ERR) ? "OK" : "FAIL")+"<br>"); }
try {
selection.getRangeAt(10000);
} catch (e) {document.write(((e.code==DOMException.INDEX_SIZE_ERR) ? "OK" : "FAIL")+"<br>"); }
// these should throw as well but don't at the moment. Just checking they don't crash.
selection.collapse(body, 10000);
selection.setBaseAndExtent(body, 1000, body, 0);
selection.setBaseAndExtent(body, 0, body, 10000);
selection.setPosition(body, 10000);
</script>