<!doctype html> <title>Selection.removeAllRanges() tests</title> <div id=log></div> <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=common.js></script> <script> "use strict"; // Also test a selection with no ranges testRanges.unshift("[]"); var range = rangeFromEndpoints([paras[0].firstChild, 0, paras[0].firstChild, 1]); for (var i = 0; i < testRanges.length; i++) { test(function() { setSelectionForwards(eval(testRanges[i])); selection.removeAllRanges(); assert_equals(selection.rangeCount, 0, "After removeAllRanges(), rangeCount must be 0"); // Test that it's forwards selection.addRange(range); assert_equals(selection.anchorOffset, selection.getRangeAt(0).startOffset, "After removeAllRanges(), addRange() must be forwards, so anchorOffset must equal startOffset rather than endOffset"); assert_equals(selection.focusOffset, selection.getRangeAt(0).endOffset, "After removeAllRanges(), addRange() must be forwards, so focusOffset must equal endOffset rather than startOffset"); }, "Range " + i + " " + testRanges[i] + " forwards"); // Copy-pasted from above test(function() { setSelectionBackwards(eval(testRanges[i])); selection.removeAllRanges(); assert_equals(selection.rangeCount, 0, "After removeAllRanges(), rangeCount must be 0"); // Test that it's forwards selection.addRange(range); assert_equals(selection.anchorOffset, selection.getRangeAt(0).startOffset, "After removeAllRanges(), addRange() must be forwards, so anchorOffset must equal startOffset rather than endOffset"); assert_equals(selection.focusOffset, selection.getRangeAt(0).endOffset, "After removeAllRanges(), addRange() must be forwards, so focusOffset must equal endOffset rather than startOffset"); }, "Range " + i + " " + testRanges[i] + " backwards"); } testDiv.style.display = "none"; </script>