tor-browser

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

Frame-older-generators-05.js (546B)


      1 // Test that Debugger.Frame.prototype.older works on suspended async generators.
      2 
      3 load(libdir + "asserts.js");
      4 
      5 const g = newGlobal({ newCompartment: true });
      6 const dbg = new Debugger(g);
      7 
      8 g.eval(`
      9 async function* f() {
     10  await Promise.resolve();
     11 }
     12 `);
     13 
     14 let frame;
     15 dbg.onEnterFrame = f => {
     16  frame = f;
     17  dbg.onEnterFrame = undefined;
     18 };
     19 
     20 (async () => {
     21  const it = g.f();
     22 
     23  assertEq(frame.older, null);
     24 
     25  const promise = it.next();
     26 
     27  assertEq(frame.older, null);
     28 
     29  await promise;
     30 
     31  assertThrowsInstanceOf(() => frame.older, Error);
     32 })();