tor-browser

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

idempotentCache.js (826B)


      1 // Test that we don't attach ICs to idempotent caches that are incompatible
      2 // with the cache result type.
      3 
      4 var missingObjs = [{a:1},Object.create({a:2}),{}];
      5 function testMissing(limit)
      6 {
      7    var res = 0;
      8    for (var i = 0; i < 1000; i++) {
      9 for (var j = 0; j < missingObjs.length; j++) {
     10     var obj = missingObjs[j];
     11     if (j < limit)
     12 	res += obj.a;
     13 }
     14    }
     15    return res;
     16 }
     17 assertEq(testMissing(2), 3000);
     18 assertEq(testMissing(3), NaN);
     19 
     20 var lengthObjs = [{length:{a:1}},Object.create({length:{a:2}}),[0,1]];
     21 function testArrayLength(limit)
     22 {
     23    var res = 0;
     24    for (var i = 0; i < 1000; i++) {
     25 for (var j = 0; j < lengthObjs.length; j++) {
     26     var obj = lengthObjs[j];
     27     if (j < limit)
     28 	res += obj.length.a;
     29 }
     30    }
     31    return res;
     32 }
     33 assertEq(testArrayLength(2), 3000);
     34 assertEq(testArrayLength(3), NaN);