Automatic update from web-platform-tests Test getRangeAt() returning the same object (#29773) * Test getRangeAt() returning the same object * add test for different ranges * add no range test * syntax update -- wpt-commits: 0713d2563a42bc88c0de0aee3d7ca9868b59a2a5 wpt-pr: 29773
33 lines
1.0 KiB
HTML
33 lines
1.0 KiB
HTML
<!DOCTYPE html>
|
|
<title>The getRangeAt method</title>
|
|
<script src=/resources/testharness.js></script>
|
|
<script src=/resources/testharnessreport.js></script>
|
|
<link rel="help" href="https://w3c.github.io/selection-api/#dom-selection-getrangeat">
|
|
<body>
|
|
<script>
|
|
const sel = getSelection();
|
|
|
|
test(function() {
|
|
var range = document.createRange();
|
|
sel.addRange(range);
|
|
assert_throws_dom("INDEX_SIZE_ERR", function() { sel.getRangeAt(-1); })
|
|
assert_throws_dom("INDEX_SIZE_ERR", function() { sel.getRangeAt(1); })
|
|
}, "Only supports index 0");
|
|
|
|
test(() => {
|
|
sel.removeAllRanges();
|
|
assert_throws_dom("INDEX_SIZE_ERR", () => sel.getRangeAt(0))
|
|
}, "Throws when with no range");
|
|
|
|
test(() => {
|
|
sel.addRange(document.createRange());
|
|
assert_equals(sel.getRangeAt(0), sel.getRangeAt(0));
|
|
}, "Returns the same range object when with no selection change");
|
|
|
|
test(() => {
|
|
const range = sel.getRangeAt(0);
|
|
sel.collapse(document.body);
|
|
assert_not_equals(range, sel.getRangeAt(0));
|
|
}, "Returns a different range object when with selection change");
|
|
</script>
|