tor-browser

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

string-includes.js (1713B)


      1 assertEq("abc".includes("a"), true);
      2 assertEq("abc".includes("b"), true);
      3 assertEq("abc".includes("abc"), true);
      4 assertEq("abc".includes("bc"), true);
      5 assertEq("abc".includes("d"), false);
      6 assertEq("abc".includes("abcd"), false);
      7 assertEq("abc".includes("ac"), false);
      8 assertEq("abc".includes("abc", 0), true);
      9 assertEq("abc".includes("bc", 0), true);
     10 assertEq("abc".includes("de", 0), false);
     11 assertEq("abc".includes("bc", 1), true);
     12 assertEq("abc".includes("c", 1), true);
     13 assertEq("abc".includes("a", 1), false);
     14 assertEq("abc".includes("abc", 1), false);
     15 assertEq("abc".includes("c", 2), true);
     16 assertEq("abc".includes("d", 2), false);
     17 assertEq("abc".includes("dcd", 2), false);
     18 assertEq("abc".includes("a", 42), false);
     19 assertEq("abc".includes("a", Infinity), false);
     20 assertEq("abc".includes("ab", -43), true);
     21 assertEq("abc".includes("cd", -42), false);
     22 assertEq("abc".includes("ab", -Infinity), true);
     23 assertEq("abc".includes("cd", -Infinity), false);
     24 assertEq("abc".includes("ab", NaN), true);
     25 assertEq("abc".includes("cd", NaN), false);
     26 var myobj = {toString : () => "abc", includes : String.prototype.includes};
     27 assertEq(myobj.includes("abc"), true);
     28 assertEq(myobj.includes("cd"), false);
     29 var gotStr = false, gotPos = false;
     30 myobj = {toString : (function () {
     31    assertEq(gotPos, false);
     32    gotStr = true;
     33    return "xyz";
     34 }),
     35 includes : String.prototype.includes};
     36 var idx = {valueOf : (function () {
     37    assertEq(gotStr, true);
     38    gotPos = true;
     39    return 42;
     40 })};
     41 myobj.includes("elephant", idx);
     42 assertEq(gotPos, true);
     43 assertEq("xyzzy".includes("zy\0", 2), false);
     44 var dots = Array(10000).join('.');
     45 assertEq(dots.includes("\x01", 10000), false);
     46 assertEq(dots.includes("\0", 10000), false);