tor-browser

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

Frame-this-08.js (505B)


      1 // Frame.this and evalInFrame in arrow function that uses 'this'.
      2 var g = newGlobal({newCompartment: true});
      3 g.eval("x = 4");
      4 g.eval("var foo = function() { 'use strict'; return () => this; }; var arrow = foo.call(3);");
      5 var dbg = new Debugger(g);
      6 var hits = 0;
      7 dbg.onEnterFrame = function (frame) {
      8    if (frame.type === "eval")
      9 return;
     10    hits++;
     11    assertEq(frame.type, "call");
     12    assertEq(frame.this, 3);
     13    assertEq(frame.eval("this + 1").return, 4);
     14 };
     15 g.eval("arrow();");
     16 assertEq(hits, 1);