tor-browser

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

Environment-identity-05.js (547B)


      1 // Tests that freshened blocks behave correctly in Debugger.
      2 
      3 var g = newGlobal({newCompartment: true});
      4 var dbg = Debugger(g);
      5 var log = '';
      6 var oldEnv = null;
      7 dbg.onDebuggerStatement = function (frame) {
      8  if (!oldEnv) {
      9    oldEnv = frame.environment;
     10  } else {
     11    // Block has been freshened by |for (let ...)|, should be different
     12    // identity.
     13    log += (oldEnv === frame.environment);
     14  }
     15  log += frame.environment.getVariable("x");
     16 };
     17 g.eval("for (let x = 0; x < 2; x++) { eval(\"\"); debugger; }");
     18 gc();
     19 assertEq(log, "0false1");