tor-browser

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

byteSize-of-scripts.js (1005B)


      1 // Check JS::ubi::Node::size results for scripts. We don't attempt to check
      2 // exact sizes in this test (deemed to difficult and non-deterministic), just
      3 // some sanity checks.
      4 
      5 function f1() {
      6  return 42;
      7 }
      8 
      9 print("byteSizeOfScript(f1) = " + byteSizeOfScript(f1));
     10 assertEq(byteSizeOfScript(f1) > 1, true);
     11 
     12 function f2(n) {
     13  var obj = {
     14    x: 1,
     15    y: 2,
     16    z: 3,
     17  };
     18 
     19  if (i % 2 == 0) {
     20    for (var i = 0; i < n; i++) {
     21      (function() {
     22        this.x += i;
     23        print(String(i));
     24        obj[i] = i * i;
     25        if (i > 10) {
     26          f2(i / f1());
     27        }
     28      })();
     29    }
     30  }
     31 
     32  if (i % 3 == 0) {
     33    for (var i = 0; i < n; i++) {
     34      (function() {
     35        this.x *= i;
     36        print(String(i));
     37        obj[i] = i * i;
     38        if (i > 10) {
     39          f2(i / f1());
     40        }
     41      })();
     42    }
     43  }
     44 
     45  return this.x;
     46 }
     47 
     48 print("byteSizeOfScript(f2) = " + byteSizeOfScript(f2));
     49 assertEq(byteSizeOfScript(f2) > 1, true);
     50 assertEq(byteSizeOfScript(f2) > byteSizeOfScript(f1), true);