Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 // Debugger.Object.prototype.evalInGlobal: closures capturing the global
3 var g = newGlobal();
4 var h = newGlobal();
5 var dbg = new Debugger;
6 var gw = dbg.addDebuggee(g);
7 var hw = dbg.addDebuggee(h);
9 g.x = "W H O K I L L";
10 h.x = "No Color";
11 var c1 = gw.evalInGlobal('(function () { return x; })').return;
12 var c2 = hw.evalInGlobal('(function () { return x; })').return;
13 var c3 = gw.evalInGlobalWithBindings('(function () { return x + y; })', { y:" In Rainbows" }).return;
14 var c4 = hw.evalInGlobalWithBindings('(function () { return x + y; })', { y:" In Rainbows" }).return;
16 assertEq(c1.call(null).return, "W H O K I L L");
17 assertEq(c2.call(null).return, "No Color");
18 assertEq(c3.call(null).return, "W H O K I L L In Rainbows");
19 assertEq(c4.call(null).return, "No Color In Rainbows");