js/src/jit-test/tests/debug/Frame-this-01.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:c9b14f7f3f20
1 // Frame.prototype.this in strict-mode functions, with primitive values
2
3 var g = newGlobal();
4 var dbg = new Debugger(g);
5 var hits = 0;
6 dbg.onDebuggerStatement = function (frame) {
7 hits++;
8 assertEq(frame.this, g.v);
9 };
10
11 g.eval("function f() { 'use strict'; debugger; }");
12
13 g.eval("Boolean.prototype.f = f; v = true; v.f();");
14 g.eval("f.call(v);");
15 g.eval("Number.prototype.f = f; v = 3.14; v.f();");
16 g.eval("f.call(v);");
17 g.eval("String.prototype.f = f; v = 'hello'; v.f();");
18 g.eval("f.call(v);");
19 g.eval("v = undefined; f.call(v);");
20 g.eval("v = null; f.call(v);");
21
22 assertEq(hits, 8);

mercurial