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);