tor-browser

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

Frame-evalWithBindings-02.js (707B)


      1 // evalWithBindings to call a method of a debuggee value
      2 
      3 var g = newGlobal({newCompartment: true});
      4 var dbg = new Debugger;
      5 var global = dbg.addDebuggee(g);
      6 var hits = 0;
      7 dbg.onDebuggerStatement = function (frame) {
      8    var obj = frame.arguments[0];
      9    var expected = frame.arguments[1];
     10    assertEq(frame.evalWithBindings("obj.toString()", {obj: obj}).return, expected);
     11    hits++;
     12 };
     13 
     14 g.eval("function f(obj, expected) { debugger; }");
     15 
     16 g.eval("f(new Number(-0), '0');");
     17 g.eval("f(new String('ok'), 'ok');");
     18 g.eval("f(Symbol('still ok'), 'Symbol(still ok)');");
     19 g.eval("f(Object(Symbol('still ok')), 'Symbol(still ok)');");
     20 g.eval("f({toString: function () { return f; }}, f);");
     21 assertEq(hits, 5);