tor-browser

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

Debugger-dead-global.js (853B)


      1 var g1 = newGlobal({newCompartment: true});
      2 
      3 const dbg = new Debugger();
      4 
      5 function assertThrowsDeadWrapper(f) {
      6  let caught = false;
      7  try {
      8    f();
      9  } catch (e) {
     10    assertEq(e.message, "can't access dead object");
     11    caught = true;
     12  }
     13  assertEq(caught, true);
     14 }
     15 
     16 nukeAllCCWs();
     17 
     18 // Debugger methods should throw explicit error for dead global object.
     19 assertThrowsDeadWrapper(() => dbg.addDebuggee(g1));
     20 assertThrowsDeadWrapper(() => dbg.removeDebuggee(g1));
     21 assertThrowsDeadWrapper(() => dbg.findScripts({global: g1}));
     22 assertThrowsDeadWrapper(() => dbg.makeGlobalObjectReference(g1));
     23 assertThrowsDeadWrapper(() => dbg.enableAsyncStack(g1));
     24 assertThrowsDeadWrapper(() => dbg.disableAsyncStack(g1));
     25 assertThrowsDeadWrapper(() => dbg.enableUnlimitedStacksCapturing(g1));
     26 assertThrowsDeadWrapper(() => dbg.disableUnlimitedStacksCapturing(g1));