tor-browser

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

Script-sourceStart-04.js (695B)


      1 /*
      2 * For eval and Function constructors, Script.prototype.sourceStart and
      3 * Script.prototype.sourceLength should comprise the entire script (excluding
      4 * arguments in the case of Function constructors)
      5 */
      6 let g = newGlobal({newCompartment: true});
      7 let dbg = new Debugger(g);
      8 
      9 var count = 0;
     10 function test(string, range) {
     11    dbg.onNewScript = function (script) {
     12        ++count;
     13        if (count % 2 == 0) {
     14            assertEq(script.sourceStart, range[0]);
     15            assertEq(script.sourceLength, range[1]);
     16        }
     17    }
     18 
     19    g.eval(string);
     20 }
     21 
     22 test("eval('2 * 3')", [0, 5]);
     23 test("new Function('2 * 3')", [0, 31]);
     24 test("new Function('x', 'x * x')", [0, 32]);
     25 assertEq(count, 6);