tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

removeAllRanges.html (2327B)


      1 <!doctype html>
      2 <title>Selection.removeAllRanges()/empty() tests</title>
      3 <div id=log></div>
      4 <script src=/resources/testharness.js></script>
      5 <script src=/resources/testharnessreport.js></script>
      6 <script src=common.js></script>
      7 <script>
      8 "use strict";
      9 
     10 // Also test a selection with no ranges
     11 testRanges.unshift("[]");
     12 
     13 var range = rangeFromEndpoints([paras[0].firstChild, 0, paras[0].firstChild, 1]);
     14 
     15 function testRange(rangeDesc, method) {
     16    var endpoints = eval(testRanges[i]);
     17    if (endpoints.length && (!isSelectableNode(endpoints[0]) ||
     18                             !isSelectableNode(endpoints[2]))) {
     19      return;
     20    }
     21    test(function() {
     22        setSelectionForwards(endpoints);
     23        selection[method]();
     24        assert_equals(selection.rangeCount, 0,
     25            "After " + method + "(), rangeCount must be 0");
     26        // Test that it's forwards
     27        selection.addRange(range);
     28        assert_equals(selection.anchorOffset, selection.getRangeAt(0).startOffset,
     29            "After " + method + "(), addRange() must be forwards, so anchorOffset must equal startOffset rather than endOffset");
     30        assert_equals(selection.focusOffset, selection.getRangeAt(0).endOffset,
     31            "After " + method + "(), addRange() must be forwards, so focusOffset must equal endOffset rather than startOffset");
     32    }, method + " on " + rangeDesc + " forwards");
     33 
     34    // Copy-pasted from above
     35    test(function() {
     36        setSelectionBackwards(endpoints);
     37        selection[method]();
     38        assert_equals(selection.rangeCount, 0,
     39            "After " + method + "(), rangeCount must be 0");
     40        // Test that it's forwards
     41        selection.addRange(range);
     42        assert_equals(selection.anchorOffset, selection.getRangeAt(0).startOffset,
     43            "After " + method + "(), addRange() must be forwards, so anchorOffset must equal startOffset rather than endOffset");
     44        assert_equals(selection.focusOffset, selection.getRangeAt(0).endOffset,
     45            "After " + method + "(), addRange() must be forwards, so focusOffset must equal endOffset rather than startOffset");
     46    }, method + " on " + rangeDesc + " backwards");
     47 }
     48 
     49 for (var i = 0; i < testRanges.length; i++) {
     50  testRange(testRanges[i], "removeAllRanges");
     51  testRange(testRanges[i], "empty");
     52 }
     53 
     54 testDiv.style.display = "none";
     55 </script>