tor-browser

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

Debugger-findSources-03.js (887B)


      1 // In a debugger with multiple debuggees, findSources finds script sources across all debuggees.
      2 
      3 const g1 = newGlobal({newCompartment: true});
      4 const g2 = newGlobal({newCompartment: true});
      5 // Declare a function in order to keep the script source alive across GC.
      6 g1.evaluate(`function fa() {}`, { fileName: "a.js" });
      7 g1.evaluate(`function fb() {}`, { fileName: "b.js" });
      8 g2.evaluate(`function fc() {}`, { fileName: "c.js" });
      9 g2.evaluate(`function fd() {}`, { fileName: "d.js" });
     10 
     11 const dbg = new Debugger();
     12 const g1w = dbg.addDebuggee(g1);
     13 const g2w = dbg.addDebuggee(g2);
     14 
     15 const sources = dbg.findSources();
     16 assertEq(dbg.findSources().filter(s => s.url == "a.js").length, 1);
     17 assertEq(dbg.findSources().filter(s => s.url == "b.js").length, 1);
     18 assertEq(dbg.findSources().filter(s => s.url == "c.js").length, 1);
     19 assertEq(dbg.findSources().filter(s => s.url == "d.js").length, 1);