summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/Environment-setVariable-05.js
blob: d78edad3bf1204011665bda85f174c6a9bb0d240 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// setVariable can change the types of variables and arguments in functions.

var g = newGlobal({newCompartment: true});
g.eval("function f(a) { var b = a + 1; debugger; return a + b; }");
for (var i = 0; i < 20; i++)
    assertEq(g.f(i), 2 * i + 1);

var dbg = new Debugger(g);
dbg.onDebuggerStatement = function (frame) {
    frame.environment.setVariable("a", "xyz");
    frame.environment.setVariable("b", "zy");
};
for (var i = 0; i < 10; i++)
    assertEq(g.f(i), "xyzzy");